home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #14 / Monster Media No. 14 (April 1996) (Monster Media, Inc.).ISO / lan / ssl15.zip / SSL.TXT < prev   
Text File  |  1996-02-03  |  101KB  |  6,035 lines

  1.  
  2.                        SSL (System Scripting Language)
  3.                      
  4.                                  Version 1.5
  5.  
  6.                      SSL Copyright 1995 Anthony Mathews
  7.                              All rights reserved
  8.                      
  9.                      
  10.                      
  11.                      
  12.                      
  13.                      
  14.                      
  15.                      
  16.                      
  17.                      
  18.                      
  19.                      
  20.                      
  21.                      
  22.                      
  23.                      
  24.                      
  25.                      
  26.                      
  27.                      
  28.                      
  29.                      
  30.                      
  31.                      
  32.                      
  33.                      
  34.                      
  35.                      
  36.                      
  37.                      
  38.                      
  39.                      
  40.                      
  41.                      
  42.                      
  43.                      
  44.                      
  45.                      
  46.                      
  47.                      
  48.                      
  49.                      
  50.                      
  51.                      
  52.                      
  53.                      
  54.                      
  55.                      
  56.                      
  57.                      
  58.                      
  59.                      
  60.                      
  61.                      
  62.                      
  63.                      
  64.                      
  65.                      
  66.                      
  67.                      DEFINITION OF SHAREWARE
  68.  
  69. Shareware distribution gives users a chance to try software before buying
  70. it. If you try a Shareware program and continue using it, you are expected
  71. to register. Individual programs differ on details -- some request
  72. registration while others require it, some specify a maximum trial period.
  73. With registration, you get anything from the simple right to continue using
  74. the software to an updated program with printed manual.
  75.  
  76. Copyright laws apply to both Shareware and commercial software, and the
  77. copyright holder retains all rights, with a few specific exceptions as
  78. stated below. Shareware authors are accomplished programmers, just like
  79. commercial authors, and the programs are of comparable quality. (In both
  80. cases, there are good programs and bad ones!) The main difference is in the
  81. method of distribution. The author specifically grants the right to copy
  82. and distribute the software, either to all and sundry or to a specific
  83. group. For example, some authors require written permission before a
  84. commercial disk vendor may copy their Shareware.
  85.  
  86. Shareware is a distribution method, not a type of software. You should find
  87. software that suits your needs and pocketbook, whether it's commercial or
  88. Shareware. The Shareware system makes fitting your needs easier, because
  89. you can try before you buy. And because the overhead is low, prices are low
  90. also. Shareware has the ultimate money-back guarantee -- if you don't use
  91. the product, you don't pay for it.
  92.  
  93. DISCLAIMER - AGREEMENT
  94.  
  95. Users of SSL must accept this disclaimer of warranty: "SSL is supplied as
  96. is.  The author disclaims all warranties, expressed or implied, including,
  97. without limitation, the warranties of merchantability and of fitness for
  98. any purpose. The author assumes no liability for damages, direct or
  99. consequential, which may result from the use of SSL."
  100.  
  101. SSL is a "shareware program" and is provided at no charge to the user for
  102. evaluation.  Feel free to share it with your friends, but please do not
  103. give it away altered or as part of another system.  The essence of "user-
  104. supported" software is to provide personal computer users with quality
  105. software without high prices, and yet to provide incentive for programmers
  106. to continue to develop new products.  If you find this program useful and
  107. find that you are using SSL and continue to use SSL after a 30 day
  108. trial period, you must make a registration payment  to A.R.M. SOFTWARE.
  109. Prices can be found in the registration section of this manual.
  110.  
  111. Anyone distributing SSL for any kind of remuneration must first contact
  112. A.R.M. SOFTWARE at the address below for authorization. This authorization
  113. will be automatically granted to distributors recognized by the (ASP) as
  114. adhering to its guidelines for shareware distributors, and such
  115. distributors may begin offering SSL immediately (However A.R.M. SOFTWARE
  116. must still be advised so that the distributor can be kept up-to-date with
  117. the latest version of SSL.).
  118.  
  119. You are encouraged to pass a copy of SSL along to your friends for
  120. evaluation.  Please encourage them to register their copy if they find that
  121. they can use it.  All registered users will receive a copy of the latest
  122. version of the SSL system.
  123.  
  124.  
  125.  
  126.                                      
  127.                   
  128.                   
  129.                   
  130.                   
  131.                   
  132.                   
  133.                   **** ASP OMBUDSMANOMBUDSMAN POLICY ****
  134.  
  135. This program is produced by a member of the Association of Shareware
  136. Professionals (ASP).  ASPASP wants to make sure that the shareware
  137. principle works for you. If you are unable to resolve a shareware-related
  138. problem with an ASP member by contacting the member directly, ASP may be
  139. able to help. The ASP Ombudsman can help you resolve a dispute or problem
  140. with an ASP member, but does not provide technical support for members'
  141. products.  Please write to the ASP Ombudsman at 545 Grover Road, Muskegon,
  142. MI USA 49442-9427, Fax 616-788-2765, or send a CompuServe message via 
  143. CompuServe Mail to ASP Ombudsman 70007,3536.
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.                                      
  192.                          
  193.                          
  194.                          
  195.                          
  196.                          
  197.                          
  198.                          
  199.                          REGISTRATION
  200.                                      
  201. Fill out the form on the next page or the form in the register.txt file and
  202. mail it to:
  203.  
  204.                     A.R.M. Software
  205.                     5656 Timberlane Rd.
  206.                     Lake Wales, FL 33853
  207.  
  208. Registration Fee:
  209.  
  210. $49.95 plus $5.00 shipping and handling
  211.  
  212. * Prices Subject to change without notification!
  213.  
  214.  
  215. What do you get when you register:
  216.  
  217. 1)      A nicely bound manual.
  218. 2)      Latest version of SSL.
  219. 3)      Upgrade notifications.
  220. 4)      90 days free technical support.
  221. 5)      Royalty free distribution privileges to any machine owned or 
  222.         leased by the license holder.
  223.  
  224.  
  225. Support Policy:
  226.  
  227. 1)   Support can be by mail or by phone.  If support is desired by phone,
  228.      calls must be made in the evenings Monday thru Thursday.  If
  229.      someone is not there to take your call, you will be told when the next
  230.      time someone will be available to take your call.  The phone number for
  231.      support will be sent to you when you register your software.
  232. 2)   Please elect one or two people in your organization to coordinate
  233.      support with A.R.M. Software.
  234. 3)   Contracts can be negotiated for additional technical support after the
  235.      initial 90 days.
  236. 4)   Consultation is also available to help your business come up with
  237.      better, more effective and cheaper ways to support your users.
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265. A.R.M. Software
  266. 5656 Timberland Rd.
  267. Lake Wales, FL 33853
  268.                                      
  269.  
  270. Your Name:          ____________________________________________________
  271. Company Name:       ____________________________________________________
  272. Mailing Address:    ____________________________________________________
  273. P.O. Box:           ____________________________________________________
  274. City:               _______________
  275. State, Cntry, Zip:  _______________ ______________ ________________
  276. Phone:              _______________________________
  277.  
  278. Registration Fee:
  279.  
  280. $49.95 plus $5.00 shipping and handling
  281.  
  282. * Prices Subject to change without notification!
  283.  
  284.  
  285. What do you get when you register:
  286.  
  287. 1)      A nicely bound manual.
  288. 2)      Latest version of SSL.
  289. 3)      Upgrade notifications.
  290. 4)      90 days free technical support.
  291. 5)      Royalty free distribution privileges to any machine owned or 
  292.         leased by the license holder.
  293.  
  294.  
  295.  
  296. Amount of Money enclosed:     ___________________
  297.  
  298. ___  Cash
  299. ___  Personal Check
  300. ___  Business Check
  301. ___  Cashiers Check
  302. ___  PO#
  303.  
  304. * Make checks payable to Anthony Mathews
  305.  
  306. * A.R.M. Software is not responsible for any type of payment which is lost
  307.   in the mail.
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.                                      
  321.                                      
  322.                           
  323.                           
  324.                           
  325.                           
  326.                           
  327.                           
  328.                           
  329.                           
  330.                           
  331.                           FILES INCLUDED ON DISK
  332.                                      
  333. INSTALL.BAT    -    Runs the INSTALL.SSL script.
  334. INSTALL.SSL    -    Copies SSL to your system.
  335. README.1ST     -    Last minute information.
  336. SSL.EXE        -    Application.
  337. SSL.TXT        -    Documentation in a plain ASCII text format.
  338. REGISTER.TXT   -    Registration form.
  339.  
  340. \SAMPLES\ File name:          Sample use of:
  341.  
  342.           CMDWHILE.BAT   -    SSL *C command line option.
  343.           COLORS.SSL     -    MASTERBACK     MASTERFORE
  344.                               MENUITEMBACK   MENUITEMFORE
  345.                               WINBACK        WINFORE
  346.           FILEFUNC.SSL   -    INSERTTEXT     NUMLINES
  347.                               PULLTEXT       READLINE
  348.                               REMOVESECTION  REMOVETEXT
  349.           GROUP.SSL      -    ADDGROUP       DELGROUP
  350.           INVENT.SSL     -    INVENTORY
  351.           LABELS.SSL     -    INPUTWINDOW    INSERTTEXT
  352.                               WHILE          LOOP
  353.           MATH.SSL       -    ADD            SUB
  354.                               MULT           DIV
  355.                               MOD
  356.           MENU.SSL       -    MENU           IF
  357.                               ELSE           END
  358.           OUTWIN.SSL     -    OUTPUTWINDOW
  359.           PUSHKEY.SSL    -    PUSHKEY        COMMAND
  360.           STRING.SSL     -    CONCAT         CROP
  361.                               EXTRACTI       LCROP
  362.                               LENGTH         LTRIM
  363.                               RCROP          RTRIM
  364.           VARIABLE.SSL   -    EQU            GLOBALENV
  365.                               LISTVARS       LOCALENV
  366.                               RELEASE        RELEASEALL
  367.           VOLUME.SSL     -    GETVOLUME      PUTVOLUME
  368.           WHILE.SSL      -    WHILE          LOOP
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.                                      
  376.                                      
  377.                                      
  378.                                             
  379.                                      
  380.                                      
  381.                                
  382.                                
  383.                                
  384.                                
  385.                                
  386.                                
  387.                                
  388.                                
  389.                                
  390.                                
  391.                                
  392.                                
  393.                                
  394.                                
  395.                                
  396.                                        
  397.                                INTRODUCTION
  398.  
  399. A lot has changed in how businesses are run today.  To go into a company
  400. and not see several computers is very unlikely.  With an increasing base of
  401. computer systems being added to businesses a prominent problem has arose.
  402. How do you support so many computers with as few people as possible?  The
  403. answer is to decrease the amount of time needed to support one computer.
  404. How do you do this?  In an environment that has many computers which need
  405. the same operations performed on them you need to be able to decrease the
  406. number of keystrokes and checks on each workstation.  This is where
  407. SSL(System Scripting Language) comes in.
  408.  
  409. What is a script?
  410.  
  411. A script is a lot like a batch file, but much more powerful.  With SSL you
  412. can record repetitive tasks that will be performed on multiple
  413. workstations.  This allows you to run the script on the workstation and
  414. avoid all the key strokes and checks you would normally have to do manually
  415. on every workstation.
  416.  
  417. What can SSL do that a batch file can't?
  418.  
  419. There are many things, but some of the most prominent are:
  420.  
  421.      1. Adding and removing text from files.
  422.      2. Searching text files for a specified string.
  423.      3. Extracting data from files and manipulating it.
  424.      4. Windows ini file operations
  425.      5. Prompt users for input
  426.      6. Set up menus
  427.      7. Check available hard drive space.
  428.      8. Check installed RAM.
  429.      9. Check current Dos versions.
  430.  
  431. Most checks can be used in conditional statements to allow you to determine
  432. a course of action.
  433.  
  434. What are some of the biggest uses for SSL?
  435.  
  436.      1) Installing software.       4) System maintenance.
  437.      2) Upgrading software.        5) Inventorying software on workstations.
  438.      3) Removing software.
  439.  
  440. SSL's biggest use is doing everything that has been mentioned via a network
  441. so that someone doesn't even have to visit the user's desk.  The easiest
  442. way to initiate a script is when a user logs into the network.
  443.  
  444. I have worked for two major corporations who were using internally written
  445. scripting languages to automate tasks.  The only problem is that the people
  446. writing the languages could not devote the time needed to make their
  447. languages as useful as they could be.  So I set out to write a affordable
  448. scripting language that gives all the versatility needed to support large
  449. numbers of computer systems.
  450.  
  451.  
  452.  
  453.  
  454.  
  455.                                      
  456.                       
  457.                       
  458.                       
  459.                       
  460.                       
  461.                       
  462.                       
  463.                       HOW CAN SSL SAVE YOU $$MONEY$$
  464.                                      
  465. Every one has heard the saying "Time is Money" and it is very true.
  466.  
  467. SSL's primary way of saving you money is by saving you time.
  468.  
  469. SSL can save you time 4 different ways:
  470.      a. Traveling to the users workstation
  471.      b. Scheduling a time to visit the workstation
  472.      c. Limited or No interaction with users
  473.      d. Performing tasks on the workstation
  474.  
  475. When it is necessary to perform tasks on multiple workstations, the only
  476. time you will have tied up in it is the time it takes to write the script.
  477.  
  478. Below is a cost analysis of a install I did on about 250 workstations.
  479.  
  480. These figures are very conservative and assume that scripts will run
  481. automatically when users login to the network.  They also assume that the
  482. users you are installing are at the same site.  If users are at different
  483. sites and you are not using automated scripts, the costs incurred for one
  484. install are even higher than in the example due to travel expenses.
  485.  
  486. Man hours needed to   Installation by Hand          Installation using Script
  487.  
  488. Install application           .25                               0
  489. Schedule install              .083                              0
  490. Travel to workstation         .083                              0
  491. Write script                 0                                  8
  492.  
  493. Technician's hourly rate   $12.00                             $12.00
  494.  
  495. Cost                        $5.00 per workstation             $90.00 unlimited
  496.  
  497.  
  498. As you can see the cost associated with the use of SSL is fixed at $90 for 
  499. this particular scenario, however manual installation costs grow from 
  500. $100 for 20 workstation to $1000 for 200 workstations.
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.                                      
  525.                       
  526.                       
  527.                       
  528.                       
  529.                       CONVENTIONS USED IN THIS MANUAL
  530.  
  531. 1. Required parameters are surrounded by [ ]
  532. 2. Optional parameters are surrounded by < >
  533. 3. Parameters need not be placed in " " unless there are spaces in them.
  534. 4. Any extra parameters given with a command will be ignored.
  535. 5. Any filename given as a parameter without a drive and path will be
  536.    searched for in the current working directory.
  537.  
  538. Special characters:
  539.  
  540.      @@ - You must enclose SSL variables in @ signs accept when assigning
  541.           them a value.
  542.  
  543.      %% - You must enclose environment variables in percent signs accept
  544.           when assigning them a value.
  545.  
  546.      // - Any special character preceded by "/"  will not be treated as
  547.           special. i.e. /@ or /% or /" or //
  548.  
  549.      "" - Used to enclose a string with spaces or tabs in it.
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.                                      
  580.                         
  581.                         
  582.                         
  583.                         
  584.                         
  585.                         
  586.                         
  587.                         
  588.                         
  589.                         
  590.                         
  591.                         
  592.                         
  593.                         
  594.                         
  595.                         PROGRAM EXECUTION
  596.  
  597.  
  598. SSL [<DRIVE\PATH\>FILENAME]
  599.  
  600. Where FILENAME is the name of the file which contains the script.  No
  601. special extensions are required.  The following example shows how to
  602. execute a script named INSTALL.SSL which is found in the C:\UPDATE
  603. directory.
  604.  
  605.      SSL C:\UPDATE\INSTALL.SSL
  606.  
  607. ******************************** IMPORTANT *********************************
  608.  
  609. SSL also has a very powerful feature that will save you tons of headaches
  610. when creating complex batch files.  No more will you need a 100 different
  611. little executables to use in your batch files in order to perform tasks
  612. such as rebooting the computer, inserting text in a file, deleting text
  613. from a file, checking for the existence of certain text in a file, adding a
  614. group to windows, deleting a group from windows, putting keys in the
  615. keyboard buffer and so on.
  616.  
  617. WHY?
  618.  
  619. Because any SSL command can be specified on the command line without using
  620. a external script file.  Better than that you can specify a series of up to
  621. 20 commands on the command line.  Here is how:
  622.  
  623. SSL *C COMMAND PARAMETERS ... *NL COMMAND PARAMETERS ... *NL COMMAND... <NB>
  624.  
  625. The *C specifies that a external script file will not be used and the
  626. command desired will be put on the command line.   Each command is
  627. separated by a *NL.  That is all there is to it.
  628.  
  629. There is one optional switch, "*NB", which keeps SSL from displaying a BANNER 
  630. or information about what SSL is doing.  This is useful when you do not 
  631. desire users to know SSL is running.
  632.  
  633. The following command can be placed in a batch file and will reboot the
  634. computer when executed:
  635.  
  636. SSL *C REBOOT
  637.  
  638. The following command will count from 0 to 10 and print each number to the
  639. screen:
  640.  
  641. SSL *C EQU X 0 *NL WHILE "<=" @X@ 10 *NL DISPLAY @X@ *NL ADD @X@ 1 X *NL LOOP
  642.  
  643. Any parameter containing a character that is recognized by DOS as special,
  644. such as "<", must have the entire parameter surrounded by double quotes so
  645. that the special character is not recognized as special.
  646.  
  647. For an explanation of the commands in the previous examples refer to the
  648. particular command found latter in this manual.
  649.  
  650. * Note: You must have write capabilities in the directory you run SSL from
  651. in order to use the *C option.
  652.                                      
  653.                             
  654.                             
  655.                             
  656.                             
  657.                             
  658.                             
  659.                             
  660.                             
  661.                             VARIABLES
  662.  
  663. Variables are a very powerful part of SSL.  Variables allow you to prompt
  664. users for input, manipulate data and use the same data through out your
  665. script without having to hard code the value every time that value is
  666. needed.  Variables can be used in any command that requires parameters.
  667. Often you will find it is better to define a variable and use it as a
  668. parameter than to hard code the value in the command,  especially if the
  669. value of the parameter is a long string of characters.  Commands are
  670. restricted to one line and a maximum of 255 characters.  If you use
  671. variables you save a lot of the command line space.  Many commands such as
  672. MENU and INPUTWINDOW can make use of this a great deal.
  673.  
  674. It is always best to initialize a variable before using it.  If you do not
  675. and a command that uses the variable fails to assign a value to the
  676. variable for what ever reason, the variable will not have a value for any
  677. other commands that use it latter in the script, causing multiple errors.
  678. Any uninitialized variable that is used in a conditional statement will
  679. return a false value.
  680.  
  681. All variables are strings of characters, however, for a variable to have a
  682. math function performed on it, it must only contain numeric digits.
  683.  
  684. TYPES:
  685.  
  686. There are two types of variables:
  687.  
  688.    SSL variables            -    SSL variables are defined by SSL while 
  689.                                  executing a script and can only be used 
  690.                                  while executing the script.
  691.  
  692.                                  SSL variables can be used in any function 
  693.                                  that requires a value to be passed to it or 
  694.                                  passes a value back after execution.
  695.  
  696.                                  SSL variable names can not exceed 30 
  697.                                  characters and SSL variable values can not 
  698.                                  exceed 255 characters.
  699.  
  700.                                  The maximum number of SSL variables allowed 
  701.                                  is 30.
  702.  
  703.                                  It is always good to delete a SSL variable 
  704.                                  when you are finished using it with the 
  705.                                  RELEASE command so that you don't reach 
  706.                                  the limit.
  707.  
  708.    Environment variables    -    Environment variables can only be assigned 
  709.                                  a value by LOCALENV or GLOBALENV.
  710.  
  711.                                  Environment variables can be used in any 
  712.                                  function that requires a value to be passed 
  713.                                  to it.
  714.  
  715.                                  Environment variables can be set up until 
  716.                                  you run out of environment space, which is 
  717.                                  dependent upon the size of your environment 
  718.                                  and the size of your variables.
  719.  
  720.    
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727. Variables: (continued)
  728.  
  729. USE:
  730.  
  731. To use a SSL variable just enclose the variable name in @ signs.  
  732.  
  733. i.e. @COUNT@
  734.  
  735. Any time you are trying to assign a SSL variable name a value do not
  736. enclose it in @ signs.
  737.  
  738. i.e. EQU COUNT "12"
  739.  
  740. To use a environment variable enclose the variable name in % signs.  
  741.  
  742. i.e. %PATH%
  743.  
  744. When you are assigning a environment variable a value using LOCALENV or
  745. GLOBALENV, do not enclose it in % signs.  
  746.  
  747. i.e. LOCALENV PATH C:\DOS
  748.  
  749. Remember, environment variables set up using GLOBALENV can not be used
  750. until execution of the current script is finished.
  751.  
  752.  
  753.  
  754. PREDEFINED
  755. SYSTEM VARIABLES:   @DATE@         -    Returns the date.
  756.                     @DOSVER@       -    Returns the current DOS version.
  757.                     @DISKSPACE(X)@ -    Returns the available disk space on
  758.                                         Drive (X).
  759.  
  760.                                         i.e. @DISKSPACEC@
  761.                                         i.e. @DISKSPACED@
  762.  
  763.                                         This value is not fixed.  It is
  764.                                         calculated every time the variable is 
  765.                                         encountered.
  766.  
  767.                     @STARTUP@      -    Returns the directory that SSL was 
  768.                                         ran from.
  769.                     @TIME@         -    Returns the time at which this
  770.                                         variable was encountered.
  771.                     @TOTRAM@       -    Returns the total amount of RAM
  772.                                         installed.
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.                                      
  785.                       
  786.                       
  787.                       
  788.                       
  789.                       
  790.                       
  791.                       
  792.                       
  793.                       COMMAND SUMMARY
  794.                                      
  795. #                   INLINE              WAIT
  796. ADD                 INPUT               WHILE
  797. ADDGROUP            INPUTWINDOW         WINBACK       
  798. ATTRIBUTE           INSERTTEXT          WINFORE       
  799. BEEP                INVENTORY
  800. BREAK               LABEL
  801. CD                  LCROP
  802. CLS                 LENGTH
  803. COMMAND             LISTVARS
  804. CONCAT              LOCALENV
  805. COPY                LOOP
  806. CROP                LTRIM
  807. DEL                 MASTERBACK
  808. DELGROUP            MASTERFORE
  809. DISPLAY             MD
  810. DIV                 MENU
  811. ELSE                MENUITEMBACK
  812. END                 MENUITEMFORE
  813. EQU                 MOD
  814. ERRORLEVEL          MOVE
  815. EXIT                MSGLEVEL
  816. EXTRACTI            MULT
  817. FILEDATE            NUMLINES
  818. FILETIME            OUTPUTWINDOW
  819. FILESIZE            PAUSE
  820. GETVOLUME           PULLTEXT 
  821. GLOBALENV           PUSHKEY
  822. GOTO                PUTVOLUME
  823. IF   =              RCROP
  824.      >              RD
  825.      <              READLINE
  826.      >=             REBOOT
  827.      <=             REFRESH
  828.      <>             RELEASE
  829.      DEFINED        RELEASEALL
  830.      !DEFINED       REMOVETEXT
  831.      EXIST          REMOVESECTION
  832.      !EXIST         REN
  833.      EXIST*         RENDIR
  834.      !EXIST*        RTRIM
  835.      TEXTEXIST      SSL
  836.      !TEXTEXIST     SUB
  837.      ISNUM          
  838.      !ISNUM         
  839.  
  840.               
  841.  
  842.  
  843.  
  844.  
  845.                                      
  846.                               
  847.                               
  848.                               
  849.                               
  850.                               
  851.                               
  852.                               
  853.                               
  854.                               
  855.                               
  856.                               
  857.  
  858.                                 COMMAND SYNTAX
  859.  
  860. #
  861.  
  862. PURPOSE:       Used to add commentscomments to a script or temporarily
  863.                disable a line in the script.  Any line with # at the
  864.                beginning of it will not be executed.
  865.  
  866. SYNTAX:        # <REMAINDER OF LINE>
  867.  
  868. SAMPLE CALL:   # EQU FIVE 5
  869.  
  870. COMMENTS:      In the sample call the EQU statement would not be executed.
  871.  
  872. ASSOCIATED COMMANDS:
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924. ADD
  925.  
  926. PURPOSE:       Adds two numbers together and stores the value in the given
  927.                variable.
  928.  
  929. SYNTAX:        ADD [NUMBER1] [NUMBER2] [VARIABLE NAME]
  930.  
  931. SAMPLE CALL:   EQU COUNT 10
  932.                ADD 50 @COUNT@ ANSWER
  933.  
  934. COMMENTS:      Numbers and/or variables can be used.  In the previous sample
  935.                call the value of ANSWER will be 60.
  936.  
  937. ASSOCIATED COMMANDS:     DIV, MOD, MULT, SUB
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990. ADDGROUP
  991.  
  992. PURPOSE:       Add a new group file entry to the progman.ini file.
  993.  
  994. SYNTAX:        ADDGROUP [<DRIVE\PATH\>INI FILE NAME] [GROUP ENTRY]
  995.  
  996. SAMPLE CALL:   ADDGROUP C:\WINDOWS\PROGMAN.INI C:\WINDOWS\NEW.GRP
  997.  
  998. COMMENTS:
  999.  
  1000. ASSOCIATED COMMANDS:     DELGROUP, INSERTTEXT, NUMLINES, PULLTEXT, READLINE, 
  1001.                          REMOVESECTION, REMOVETEXT
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010.  
  1011.  
  1012.  
  1013.  
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056. ATTRIBUTE
  1057.  
  1058. PURPOSE:       Change file attributes.
  1059.  
  1060. SYNTAX:        ATTRIBUTE [<DRIVE\PATH\>FILE NAME] [ATTRIBUTE] <*SWITCH>
  1061.  
  1062.      ATTRIBUTES:    +R   -    Sets the read only attribute.
  1063.                     -R   -    Removes the read only attribute.
  1064.                     +H   -    Sets the hidden file attribute.
  1065.                     -H   -    Removes the hidden file attribute.
  1066.                     +S   -    Sets the system file attribute.
  1067.                     -S   -    Removes the system file attribute.
  1068.                     +A   -    Sets the archive attribute.
  1069.                     -A   -    Removes the archive attribute.
  1070.  
  1071.  
  1072.      SWITCHES:      *S   -    Modifies attributes on files in all sub
  1073.                               directories that match FILE NAME.
  1074.  
  1075.  
  1076. SAMPLE CALL:   (1)  ATTRIBUTE C:\DATA\LETTER.DOC +R
  1077.                (2)  ATTRIBUTE C:\DATA\*.DOC +H *S
  1078.  
  1079. COMMENTS:      DOS wild card conventions can be used to specify what files to
  1080.                change.
  1081.  
  1082.                Sample call #1 will add a read only attribute to the file
  1083.                LETTER.DOC.
  1084.  
  1085.                Sample call #2 will add a hidden file attribute to all files
  1086.                with a DOC extension, it will also change any files in
  1087.                any sub directories under C:\DATA with a DOC extension.
  1088.  
  1089. ASSOCIATED COMMANDS:     COPY, DEL, FILEDATE, FILESIZE, FILETIME, GETVOLUME, 
  1090.                          INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.                          
  1120.  
  1121.  
  1122. BEEP
  1123.  
  1124. PURPOSE:       Causes PC's speaker to sound.
  1125.  
  1126. SYNTAX:        BEEP
  1127.  
  1128. SAMPLE CALL:   BEEP
  1129.  
  1130. COMMENTS:
  1131.  
  1132. ASSOCIATED COMMANDS:
  1133.  
  1134.  
  1135.  
  1136.  
  1137.  
  1138.  
  1139.  
  1140.  
  1141.  
  1142.  
  1143.  
  1144.  
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188. BREAK
  1189.  
  1190. PURPOSE:       Disables Ctrl-BreakCtrl-Break and Ctrl-CCtrl-C keys.
  1191.  
  1192. SYNTAX:        BREAK [OPTION]
  1193.  
  1194.      AVAILABLE OPTIONS:
  1195.  
  1196.                (1)  ON
  1197.                (2)  OFF
  1198.  
  1199. SAMPLE CALL:   (1)  BREAK ON
  1200.                (2)  BREAK OFF
  1201.  
  1202. COMMENTS:      Sample call #1 will allow the user to terminate the script by
  1203.                pressing Ctrl-Break or Ctrl-C.
  1204.  
  1205.                Sample call #2 will not allow the user to terminate the
  1206.                script by pressing Ctrl-Break or Ctrl-C.
  1207.  
  1208.                When SSL finishes processing a script the BREAK state
  1209.                returns to the condition it was in when the script was
  1210.                first ran.
  1211.  
  1212. ASSOCIATED COMMANDS:
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254. CD
  1255.  
  1256. PURPOSE:       Change directory and/or drive.
  1257.  
  1258. SYNTAX:        CD [<DRIVE\PATH\>DIRECTORY]
  1259.  
  1260. SAMPLE CALL:   (1)  CD C:\TEST
  1261.                (2)  CD D:
  1262.  
  1263. COMMENTS:      Sample call #1 will change from the current working directory 
  1264.                and drive to the directory test on the root of drive C:.
  1265.  
  1266.                Sample call #2 will change to drive D: from the current
  1267.                drive and remain in the current working directory on
  1268.                drive D:.
  1269.  
  1270.                If you want to test for the existence of a drive or
  1271.                directory use the IF EXIST conditional statement.
  1272.  
  1273. ASSOCIATED COMMANDS:     RD, MD
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282.  
  1283.  
  1284.  
  1285.  
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320. CLS
  1321.  
  1322. PURPOSE:       Clears the PROGRESS window.
  1323.  
  1324. SYNTAX:        CLS
  1325.  
  1326. SAMPLE CALL:   CLS
  1327.  
  1328.  
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386. COMMAND
  1387.  
  1388. PURPOSE:       Execute a external program or DOS command.
  1389.  
  1390. SYNTAX:        COMMAND ["INSTRUCTION"]
  1391.  
  1392. SAMPLE CALL:   (1)  COMMAND C:\WINDOWS\SETUP
  1393.                (2)  COMMAND "COPY C:\AUTOEXEC.BAT C:\DOS"
  1394.                (3)  COMMAND
  1395.  
  1396. COMMENTS:      Sample call #1 will execute the Windows setup program.  After
  1397.                exiting setup it will return control to the script.
  1398.  
  1399.                Sample call #2 will copy the autoexec.bat file to the Dos
  1400.                directory using the DOS COPY command, then return control
  1401.                to the script.
  1402.  
  1403.                Sample call #3 will shell out to DOS.  Type EXIT at the DOS
  1404.                prompt and it will return control to the script.
  1405.  
  1406. ASSOCIATED COMMANDS:     EXIT
  1407.  
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452. CONCAT
  1453.  
  1454. PURPOSE:       Takes two strings and concatenates them, then stores the new
  1455.                value in the given variable.
  1456.  
  1457. SYNTAX:        CONCAT [STRING1] [STRING2] [VARIABLE NAME]
  1458.  
  1459. SAMPLE CALL:   EQU STRING1 "He"
  1460.                EQU STRING2 "llo"
  1461.                CONCAT @STRING1@ @STRING2@ STRING1
  1462.  
  1463. COMMENTS:      In the previous sample call the value of STRING2 will be
  1464.                concatenated to the end of the value of STRING1 and then
  1465.                stored back in the variable STRING1.  In the previous sample
  1466.                call the value of STRING1 at the end of execution of the 
  1467.                CONCAT statement will be "Hello".
  1468.  
  1469. ASSOCIATED COMMANDS:     CROP, EXTRACTI, INLINE, LENGTH, LCROP, LTRIM,
  1470. RCROP, RTRIM
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518. COPY
  1519.  
  1520. PURPOSE:       Copies single files, multiple files or entire directory
  1521.                structures.
  1522.  
  1523.  
  1524. SYNTAX:        COPY  [SOURCE] [DESTINATION] <*SWITCH>
  1525.  
  1526.      SWITCHES: *S   -    Copies all sub directories.
  1527.  
  1528.  
  1529. SAMPLE CALL:   (1)  COPY C:\DATA\FILE.EXE C:\NEWDIR\FILE.EXE
  1530.                (2)  COPY C:\DATA C:\BACKUP *S
  1531.                (3)  COPY C:\DATA\WORK\*.DOC C:\BACKUP *S
  1532.  
  1533. COMMENTS: Destination parameter must be given.  Dos wild card conventions
  1534.           can be used.
  1535.  
  1536.           Most other PATH and FILENAME conventions used by DOS's COPY
  1537.           and XCOPY commands can be used.
  1538.  
  1539. ASSOCIATED COMMANDS:     ATTRIBUTE, DEL, FILEDATE, FILESIZE, FILETIME, 
  1540.                          GETVOLUME, INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583. CROP
  1584.  
  1585. PURPOSE:       Takes the given SUB STRING and attempts to find an
  1586.                occurrence of it in the SOURCE string.  If it does, it
  1587.                stores all the characters that are after the SUB STRING or 
  1588.                before the SUB STRING, depending on the SWITCH used, in the 
  1589.                given VARIABLE.
  1590.  
  1591. SYNTAX:        CROP ["SOURCE"] ["SUB STRING"] [VARIABLE] [*SWITCH]
  1592.  
  1593.      SWITCHES: *P   -    Extract text before the given sub string.
  1594.                *A   -    Extract text after the given sub string.
  1595.  
  1596. SAMPLE CALL:   EQU STRING "SET PATH = C:\DOS"
  1597.                CROP @STRING@ "PATH" STRING2 *a
  1598.  
  1599. COMMENTS:      In the previous sample all the characters in the variable STRING
  1600.                after PATH will be stored in the variable STRING2.  The
  1601.                value of STRING2 will be " =  C:\DOS".
  1602.  
  1603. ASSOCIATED COMMANDS:     CONCAT, EXTRACTI, INLINE, LCROP, LENGTH, LTRIM,
  1604.                          RCROP, RTRIM
  1605.  
  1606.  
  1607.  
  1608.  
  1609.  
  1610.  
  1611.  
  1612.  
  1613.  
  1614.  
  1615.  
  1616.  
  1617.  
  1618.  
  1619.  
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649. DEL
  1650.  
  1651. PURPOSE:       Deletes individual files, multiple files, or entire sub
  1652.                directories.
  1653.  
  1654. SYNTAX:        DEL [<DRIVE\PATH\>FILENAME] <*SWITCH>
  1655.  
  1656.      SWITCHES: *S   -    Deletes files in all sub directories that match
  1657.                          FILENAME and will remove all empty sub
  1658.                          directories after deletion is complete, including 
  1659.                          the initial directory if nothing remains in it.
  1660.  
  1661. SAMPLE CALL:   (1)  DEL C:\DATA\INFO.TXT
  1662.                (2)  DEL C:\DATA\*.DOC *S
  1663.                (3)  DEL C:\DATA\*.*
  1664.                (4)  DEL C:\DATA\WORK *S
  1665.  
  1666. COMMENTS:      Dos wild card conventions can be used.
  1667.  
  1668.                Sample call #1 will delete the file INFO.TXT  in the C:\DATA
  1669.                directory.
  1670.  
  1671.                Sample call #2 will delete all files with a DOC extension in
  1672.                the C:\DATA directory including any files with a DOC
  1673.                extension in any sub directories.
  1674.  
  1675.                Sample call #3 will delete all the files in the C:\DATA
  1676.                directory.
  1677.  
  1678.                Sample call #4 will remove the entire C:\DATA\WORK directory
  1679.                and everything underneath it.
  1680.  
  1681. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, FILEDATE, FILESIZE, FILETIME,
  1682.                          GETVOLUME, INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  1683.  
  1684.  
  1685.  
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.  
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715. DELGROUP
  1716.  
  1717. PURPOSE:       Remove a group file entry from the progman.ini file.
  1718.  
  1719. SYNTAX:        DELGROUP [<DRIVE\PATH\>INI FILE NAME] [GROUP ENTRY]
  1720.  
  1721. SAMPLE CALL:   DELGROUP C:\WINDOWS\PROGMAN.INI C:\WINDOWS\NEW.GRP
  1722.  
  1723. COMMENTS:
  1724.  
  1725. ASSOCIATED COMMANDS:     ADDGROUP, INSERTTEXT, NUMLINES, PULLTEXT, READLINE, 
  1726.                          REMOVESECTION, REMOVETEXT
  1727.  
  1728.  
  1729.  
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.  
  1775.  
  1776.  
  1777.  
  1778.  
  1779.  
  1780.  
  1781. DISPLAY
  1782.  
  1783. PURPOSE:       Displays a given string of text in the PROGRESS window.
  1784.  
  1785. SYNTAX:        DISPLAY <"TEXT">
  1786.  
  1787. SAMPLE CALLS:  (1)  DISPLAY "Press any key to continue."
  1788.                (2)  DISPLAY @COUNTER@
  1789.                (3)  DISPLAY "The value of COUNTER is @COUNTER@."
  1790.                (4)  DISPLAY
  1791.  
  1792. COMMENTS:      TEXT can be a string of characters, a variable or a 
  1793.                combination of both.  Double quotes must be placed around the 
  1794.                TEXT if TEXT has spaces in it.  If you do not supply a TEXT
  1795.                string then a blank line will be printed to the PROGRESS 
  1796.                window.
  1797.  
  1798. ASSOCIATED COMMANDS: OUTPUTWINDOW
  1799.  
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.  
  1807.  
  1808.  
  1809.  
  1810.  
  1811.  
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847. DIV
  1848.  
  1849. PURPOSE:       Divides  two numbers and stores the value in the given 
  1850.                variable.
  1851.  
  1852. SYNTAX:        DIV [NUMBER1] [NUMBER2] [VARIABLE NAME]
  1853.  
  1854. SAMPLE CALL:   EQU COUNT 10
  1855.                DIV 50 @COUNT@ ANSWER
  1856.  
  1857. COMMENTS:      Numbers and or variables can be used.  In the previous sample
  1858.                call the value of ANSWER will be 5.
  1859.  
  1860. ASSOCIATED COMMANDS:     ADD, MOD, MULT, SUB
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.  
  1867.  
  1868.  
  1869.  
  1870.  
  1871.  
  1872.  
  1873.  
  1874.  
  1875.  
  1876.  
  1877.  
  1878.  
  1879.  
  1880.  
  1881.  
  1882.  
  1883.  
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  
  1889.  
  1890.  
  1891.  
  1892.  
  1893.  
  1894.  
  1895.  
  1896.  
  1897.  
  1898.  
  1899.  
  1900.  
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911.  
  1912.  
  1913. ELSE
  1914.  
  1915. PURPOSE:       Marks a section of code that should execute if the
  1916.                associated IF command returns a false value.  The section
  1917.                of code that executes is terminated by the END command.
  1918.  
  1919. SYNTAX:        ELSE
  1920.  
  1921. SAMPLE CALL:   IF
  1922.                .
  1923.                .
  1924.                ELSE
  1925.                .
  1926.                .
  1927.                END
  1928.  
  1929. COMMENTS:      If a condition in an IF statement is true, all the 
  1930.                instructions following the IF command will be executed up to 
  1931.                the associated END or ELSE command.
  1932.  
  1933. ASSOCIATED COMMANDS:     IF, END
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.  
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.  
  1952.  
  1953.  
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979. END
  1980.  
  1981. PURPOSE:       Terminates an IF command if no ELSE command has been used.
  1982.  
  1983. SYNTAX:        END
  1984.  
  1985. SAMPLE CALL:   IF
  1986.                .
  1987.                .
  1988.                END
  1989.  
  1990. COMMENTS:      If a condition in an IF statement is true, all the 
  1991.                instructions following the IF command will be executed up to 
  1992.                the associated END command unless the ELSE command is used.
  1993.  
  1994. ASSOCIATED COMMANDS:     IF, ELSE
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.  
  2015.  
  2016.  
  2017.  
  2018.  
  2019.  
  2020.  
  2021.  
  2022.  
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045. EQU
  2046.  
  2047. PURPOSE:       Set a variable name equal to some value.
  2048.  
  2049. PREDEFINED
  2050. SYSTEM VARIABLES:   @DATE@         -    Returns the date.
  2051.                     @DOSVER@       -    Returns the current DOS version.
  2052.                     @DISKSPACE(X)@ -    Returns the available disk space on
  2053.                                         Drive (X).
  2054.  
  2055.                                         @DISKSPACEC@
  2056.                                         @DISKSPACED@
  2057.  
  2058.                     @STARTUP@      -    Returns the directory that SSL was 
  2059.                                         ran from.
  2060.                     @TIME@         -    Returns the time at which this
  2061.                                         variable was encountered.
  2062.                     @TOTRAM@       -    Returns the total amount of RAM
  2063.                                         installed.
  2064.  
  2065. SYNTAX:        EQU [VARIABLE NAME] [VALUE]
  2066.  
  2067. SAMPLE CALL:   (1)  EQU COUNTRY USA
  2068.                (2)  EQU BEST @COUNTRY@
  2069.                (3)  EQU @BEST@ #1
  2070.                (4)  EQU @USA@ @USA@
  2071.  
  2072. COMMENTS:      Sample call  #1 the variable COUNTRY will now have the 
  2073.                value USA.
  2074.  
  2075.                Sample call #2 the variable BEST will have the value USA
  2076.                because that is what the value of COUNTRY is set to.
  2077.  
  2078.                Sample call #3 the value of BEST which is USA is set up as a
  2079.                variable with the value #1.
  2080.  
  2081.                Sample call #4 the value of USA which is #1 is set up as a
  2082.                variable with the value of the variable USA which is #1.
  2083.  
  2084.                COUNTRY = USA
  2085.                BEST = USA
  2086.                USA = #1
  2087.                #1 = #1
  2088.  
  2089.                Whenever you want to use the value of a variable in a
  2090.                command, enclose the variable name in @ signs.
  2091.  
  2092.                The maximum number of variables allowed is 30.  It is always
  2093.                good to delete a variable when you are finished using it
  2094.                with the RELEASE command so that you don't reach the limit.
  2095.  
  2096.                It is also good to initialize a variable with some value
  2097.                before using it so that if a command fails that uses the
  2098.                variable you can test the value of the variable.  If you do 
  2099.                not initialize a variable and a command fails the variable is 
  2100.                not given a value and you can not use it in other commands without
  2101.                receiving errors.  If a variable is not defined it will 
  2102.                produce a false value in conditional statements.
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111. ERRORLEVEL
  2112.  
  2113. PURPOSE:       Specify what type of error detection you
  2114.                desire and/or a file to log the errors to.
  2115.  
  2116. SYNTAX:        ERRORLEVEL [OPTION] <LOG FILENAME>
  2117.  
  2118.                OPTIONS:  0 -  Prints errors to the ERROR window and to the
  2119.                               LOG file.
  2120.                          1 -  Prints errors to the ERROR window but does
  2121.                               not save them in the LOG file.
  2122.                          2-   Does not print errors to the ERROR window but
  2123.                               does save them in the LOG file.
  2124.                          3 -  Does not print errors to the ERROR window nor
  2125.                               does it save them in the LOG file.
  2126.                          4 -  Prints the first occurrence of an error to
  2127.                               the ERROR window and to the LOG file,
  2128.                               then exits the script.
  2129.  
  2130. SAMPLE CALL:   (1)  ERRORLEVEL 3
  2131.                (2)  ERRORLEVEL 0 C:\ERROR.LOG
  2132.  
  2133. COMMENTS:      Sample call #1 will cause SSL to stop printing errors to the
  2134.                ERROR window and to the LOG file, if one has been opened
  2135.                previously.
  2136.  
  2137.                Sample call #2 will cause SSL to print errors to the ERROR
  2138.                window and open a file called ERROR.LOG in the root of the
  2139.                C: drive and log all errors to that file.
  2140.  
  2141.                By default ERRORLEVEL is set to 1 and no log file is opened.
  2142.  
  2143.                You must specify a LOG FILENAME when setting the ERRORLEVEL
  2144.                to 0, 2 or 4 for the first time.  After initializing a
  2145.                LOG file you no longer need to specify a LOG
  2146.                FILENAME when using these ERRORLEVEL's.
  2147.  
  2148.                A LOG FILENAME should not be specified when setting
  2149.                ERRORLEVEL to 1 or 3.
  2150.  
  2151.                If you are running SSL by specifying commands on the command
  2152.                line, the only option that has an effect is 4.  Option 4 will
  2153.                not log the error to a LOG file but will exit upon the first
  2154.                occurrence of an error.
  2155.  
  2156. ASSOCIATED COMMANDS:     MSGLEVEL, PAUSE
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177. EXIT
  2178.  
  2179. PURPOSE:       Terminates the processing of the current script and runs 
  2180.                any external command given on the command line or terminates 
  2181.                the processing of the current script and sets the DOS 
  2182.                errorlevel upon exiting the script.
  2183.  
  2184. SYNTAX:        EXIT <SWITCH> <COMMAND or ERRORLEVEL> <ARG1> <ARG2> .. <ARG10>
  2185.  
  2186.      SWITCHES: *C   -    Allows you to run an external command upon exiting
  2187.                          the script.
  2188.                *E   -    Allows you to set the DOS errorlevel to a desired 
  2189.                          value upon exiting the script.
  2190.  
  2191. SAMPLE CALL:   (1)  EXIT
  2192.                (2)  EXIT *C EDIT C:\AUTOEXEC.BAT
  2193.                (3)  EXIT *E 2
  2194.  
  2195. COMMENTS:      Sample call #1 will just terminate the processing of the 
  2196.                script and exit to DOS.
  2197.  
  2198.                Sample call #2 will terminate the processing of the script, 
  2199.                exit and load the C:\AUTOEXEC.BAT file into the DOS edit 
  2200.                program.
  2201.  
  2202.                Sample call #3 will terminate the processing of the script and 
  2203.                set the DOS errorlevel to 2.
  2204.  
  2205.                The maximum number of arguments that can be given with a 
  2206.                COMMAND using the *C SWITCH is 10.
  2207.  
  2208.                If you do not give any arguments with the EXIT command, the 
  2209.                DOS errorlevel will be set to 0 when the script terminates.  
  2210.                The DOS errorlevel is also set to 0 when a script finishes                   
  2211.                being processed and terminates on it's own.  If an error 
  2212.                occurs while processing a script which in turn causes a script 
  2213.                to terminate, the DOS errorlevel will be set to 1.
  2214.  
  2215. ASSOCIATED COMMANDS:     COMMAND
  2216.  
  2217.  
  2218.  
  2219.  
  2220.  
  2221.  
  2222.  
  2223.  
  2224.  
  2225.  
  2226.  
  2227.  
  2228.  
  2229.  
  2230.  
  2231.  
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243. EXTRACTI
  2244.  
  2245. PURPOSE:       Extracts a sub string from the given string using a given
  2246.                starting point and ending point.  The sub string extracted
  2247.                is then stored in the given variable.
  2248.  
  2249. SYNTAX:        EXTRACTI [STRING] [FROM] [TO] [VARIABLE NAME]
  2250.  
  2251. SAMPLE CALL:   EXTRACTI "Fourscore and seven years ago" 11 13 SUB
  2252.  
  2253. COMMENTS:      In the previous sample call EXTRACTI will pull the 11th, 12th 
  2254.                and 13th character out and store the value in the variable 
  2255.                SUB.  In the previous sample call the value stored in SUB will be
  2256.                "and".
  2257.  
  2258. ASSOCIATED COMMANDS:     CONCAT, CROP, INLINE, LCROP, LENGTH, LTRIM, RCROP,
  2259.                          RTRIM
  2260.  
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.  
  2268.  
  2269.  
  2270.  
  2271.  
  2272.  
  2273.  
  2274.  
  2275.  
  2276.  
  2277.  
  2278.  
  2279.  
  2280.  
  2281.  
  2282.  
  2283.  
  2284.  
  2285.  
  2286.  
  2287.  
  2288.  
  2289.  
  2290.  
  2291.  
  2292.  
  2293.  
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.  
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309. FILEDATE
  2310.  
  2311. PURPOSE:       Determines the given file's date of creation
  2312.                and stores the value in the given variable.
  2313.  
  2314. SYNTAX:        FILEDATE [<DRIVE\PATH\>FILE NAME] [VARIABLE NAME]
  2315.  
  2316. SAMPLE CALL:   FILEDATE C:\COMMAND.COM FDATE
  2317.  
  2318. COMMENTS:      Dates are given in the following format:     Month-Day-Year
  2319.                                                             09-10-95
  2320.  
  2321.                If the Month, Day or Year is a single digit
  2322.                it will be preceded by a zero.
  2323.  
  2324. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILESIZE, FILETIME, GETVOLUME,                              
  2325.                          INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  2326.  
  2327.  
  2328.  
  2329.  
  2330.  
  2331.  
  2332.  
  2333.  
  2334.  
  2335.  
  2336.  
  2337.  
  2338.  
  2339.  
  2340.  
  2341.  
  2342.  
  2343.  
  2344.  
  2345.  
  2346.  
  2347.  
  2348.  
  2349.  
  2350.  
  2351.  
  2352.  
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375. FILESIZE
  2376.  
  2377. PURPOSE:       Determines the given file's size in bytes and
  2378.                stores the value in the given variable.
  2379.  
  2380. SYNTAX:        FILESIZE [<DRIVE\PATH\>FILE NAME] [VARIABLE NAME]
  2381.  
  2382. SAMPLE CALL:   FILESIZE C:\COMMAND.COM SIZE
  2383.  
  2384. COMMENTS:
  2385.  
  2386. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILETIME, GETVOLUME,
  2387.                          INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  2388.  
  2389.  
  2390.  
  2391.  
  2392.  
  2393.  
  2394.  
  2395.  
  2396.  
  2397.  
  2398.  
  2399.  
  2400.  
  2401.  
  2402.  
  2403.  
  2404.  
  2405.  
  2406.  
  2407.  
  2408.  
  2409.  
  2410.  
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441. FILETIME
  2442.  
  2443. PURPOSE:       Determines the given file's time of creation
  2444.                and stores the value in the given variable.
  2445.  
  2446. SYNTAX:        FILETIME [<DRIVE\PATH\>FILE NAME] [VARIABLE NAME]
  2447.  
  2448. SAMPLE CALL:   FILETIME C:\COMMAND.COM FTIME
  2449.  
  2450. COMMENTS: Time is given in the following format: Hour:Minutes
  2451.                                                  19:52
  2452.  
  2453.                If the Hour or Minute is a single digit it
  2454.                will be preceded by a zero.
  2455.  
  2456.                All time is given in military time to make
  2457.                comparisons easier.
  2458.  
  2459. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, GETVOLUME,                         
  2460.                          INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  2461.  
  2462.  
  2463.  
  2464.  
  2465.  
  2466.  
  2467.  
  2468.  
  2469.  
  2470.  
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.  
  2477.  
  2478.  
  2479.  
  2480.  
  2481.  
  2482.  
  2483.  
  2484.  
  2485.  
  2486.  
  2487.  
  2488.  
  2489.  
  2490.  
  2491.  
  2492.  
  2493.  
  2494.  
  2495.  
  2496.  
  2497.  
  2498.  
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507. GETVOLUME
  2508.  
  2509. PURPOSE:       Reads the volume label of the given drive and
  2510.                stores it in the given variable.
  2511.  
  2512. SYNTAX:        GETVOLUME [DRIVE LETTER:] [VARIABLE NAME]
  2513.  
  2514. SAMPLE CALL:   GETVOLUME A: VOLUME
  2515.  
  2516. COMMENTS:
  2517.  
  2518. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, FILETIME,                               
  2519.                          INVENTORY, MOVE, PUTVOLUME, REN, RENDIR
  2520.  
  2521.  
  2522.  
  2523.  
  2524.  
  2525.  
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531.  
  2532.  
  2533.  
  2534.  
  2535.  
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553.  
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573. GLOBALENV
  2574.  
  2575. PURPOSE:       Change, Add or Delete a environment variable in the master or 
  2576.                parent environment.
  2577.  
  2578. SYNTAX:        GLOBALENV [VARIABLE NAME] <VALUE>
  2579.  
  2580. SAMPLE CALL:   (1)  GLOBALENV PATH C:\DOS
  2581.                (2)  GLOBALENV PATH
  2582.  
  2583. COMMENTS:      Sample call 1 will change the PATH to C:\DOS.
  2584.  
  2585.                Sample call 2 will delete the PATH.
  2586.  
  2587.                Changes made by GLOBALENV will not take effect until
  2588.                execution of SSL is complete.
  2589.  
  2590. ASSOCIATED COMMANDS:     LOCALENV
  2591.  
  2592.  
  2593.  
  2594.  
  2595.  
  2596.  
  2597.  
  2598.  
  2599.  
  2600.  
  2601.  
  2602.  
  2603.  
  2604.  
  2605.  
  2606.  
  2607.  
  2608.  
  2609.  
  2610.  
  2611.  
  2612.  
  2613.  
  2614.  
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  
  2621.  
  2622.  
  2623.  
  2624.  
  2625.  
  2626.  
  2627.  
  2628.  
  2629.  
  2630.  
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639. GOTO
  2640.  
  2641. PURPOSE:       Jumps from the current position in the script to a location
  2642.                marked by the same LABEL as given with the GOTO statement.
  2643.  
  2644. SYNTAX:        GOTO [LABEL]
  2645.  
  2646. SAMPLE CALL:   GOTO END
  2647.                EQU COUNTRY USA
  2648.                LABEL END
  2649.  
  2650.  
  2651. COMMENTS:      In the previous sample call the EQU command will be skipped
  2652.                because the GOTO command causes control to jump to the line 
  2653.                marked with the LABEL END statement.
  2654.  
  2655. ASSOCIATED COMMANDS:     LABEL
  2656.  
  2657.  
  2658.  
  2659.  
  2660.  
  2661.  
  2662.  
  2663.  
  2664.  
  2665.  
  2666.  
  2667.  
  2668.  
  2669.  
  2670.  
  2671.  
  2672.  
  2673.  
  2674.  
  2675.  
  2676.  
  2677.  
  2678.  
  2679.  
  2680.  
  2681.  
  2682.  
  2683.  
  2684.  
  2685.  
  2686.  
  2687.  
  2688.  
  2689.  
  2690.  
  2691.  
  2692.  
  2693.  
  2694.  
  2695.  
  2696.  
  2697.  
  2698.  
  2699.  
  2700.  
  2701.  
  2702.  
  2703.  
  2704.  
  2705. IF
  2706.  
  2707. PURPOSE:       The IF command will test a certain condition and execute the
  2708.                instructions following the IF command up to the associated
  2709.                ELSE and/or END command if the condition tested is true.  If 
  2710.                an ELSE command exists and the IF condition is false, all 
  2711.                instructions following the ELSE command will be executed up to the
  2712.                associated END command.  The ELSE command is not necessary
  2713.                if you do not want anything to execute when the IF condition 
  2714.                is false.
  2715.  
  2716. SYNTAX:        IF [CONDITION] <LOGICAL OPERATOR> <CONDITION> ...
  2717.                     instructions
  2718.                     .
  2719.                     .
  2720.                     .
  2721.                ELSE
  2722.                     instructions
  2723.                     .
  2724.                     .
  2725.                     .
  2726.                END
  2727.  
  2728.  
  2729. COMMENTS:      Inputs may be literal values, variables or a combination of 
  2730.                the two.  Nested IF statements are permitted.
  2731.  
  2732.  
  2733.  
  2734. AVAILABLE CONDITIONS:
  2735.  
  2736.  
  2737.      CONDITION:     =
  2738.  
  2739.      PURPOSE:       Checks for the equality of two inputs.
  2740.  
  2741.      SYNTAX:        IF = [INPUT1] [INPUT2]
  2742.  
  2743.      SAMPLE CALL:   EQU NAME Tony
  2744.                     IF = "Tony" @NAME@
  2745.  
  2746.      COMMENTS:      The previous sample call will return a true value.
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  
  2754.  
  2755.  
  2756.  
  2757.  
  2758.  
  2759.  
  2760.  
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.  
  2767.  
  2768.  
  2769.  
  2770.  
  2771. IF (continued)
  2772.  
  2773. AVAILABLE CONDITIONS:
  2774.  
  2775.  
  2776.      CONDITION:     >
  2777.  
  2778.      PURPOSE:       Check to see if one input is greater than the other.
  2779.  
  2780.      SYNTAX:        IF > [INPUT1] [INPUT2]
  2781.  
  2782.      SAMPLE CALL:   EQU COUNT 5
  2783.                     IF > 10 @COUNT@
  2784.  
  2785.      COMMENTS:      The previous sample call will return a true value.
  2786.  
  2787.  
  2788.      CONDITION:     <
  2789.  
  2790.      PURPOSE:       Check to see if one input is less than the other.
  2791.  
  2792.      SYNTAX:        IF < [INPUT1] [INPUT2]
  2793.  
  2794.      SAMPLE CALL:   EQU COUNT 5
  2795.                     IF < 10 @COUNT@
  2796.  
  2797.      COMMENTS:      The previous sample call will return a false value.
  2798.  
  2799.  
  2800.      CONDITION:     >=
  2801.  
  2802.      PURPOSE:       Check to see if one input is greater than or equal to
  2803.                     the other.
  2804.  
  2805.      SYNTAX:        IF >= [INPUT1] [INPUT2]
  2806.  
  2807.      SAMPLE CALL:   EQU COUNT 5
  2808.                     IF >= 10 @COUNT@
  2809.  
  2810.      COMMENTS:      The previous sample call will return a true value.
  2811.  
  2812.  
  2813.  
  2814.  
  2815.  
  2816.  
  2817.  
  2818.  
  2819.  
  2820.  
  2821.  
  2822.  
  2823.  
  2824.  
  2825.  
  2826.  
  2827.  
  2828.  
  2829.  
  2830.  
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837. IF (continued)
  2838.  
  2839. AVAILABLE CONDITIONS:
  2840.  
  2841.  
  2842.      CONDITION:     <=
  2843.  
  2844.      PURPOSE:       Check to see if one input is less than or equal to the
  2845.                     other.
  2846.  
  2847.      SYNTAX:        IF <= [INPUT1] [INPUT2]
  2848.  
  2849.      SAMPLE CALL:   EQU COUNT 10
  2850.                     IF <= 10 @COUNT@
  2851.  
  2852.      COMMENTS:      The previous sample call will return a true value.
  2853.  
  2854.  
  2855.      CONDITION:     <>
  2856.  
  2857.      PURPOSE:       Check to see if one input does not equal to the other.
  2858.  
  2859.      SYNTAX:        IF <> [INPUT1] [INPUT2]
  2860.  
  2861.      SAMPLE CALL:   EQU COUNT 10
  2862.                     IF <> 10 @COUNT@
  2863.  
  2864.      COMMENTS:      The previous sample call will return a false value.
  2865.  
  2866.         
  2867.      CONDITION:     DEFINED or !DEFINED
  2868.  
  2869.      PURPOSE:       Determines whether the given variable name has been 
  2870.                     defined.  ! negates the outcome.
  2871.  
  2872.      SYNTAX:        IF DEFINED [VARIABLE NAME]
  2873.                     IF !DEFINED [VARIABLE NAME]
  2874.  
  2875.      SAMPLE CALL:   IF DEFINED VERSION
  2876.  
  2877.      COMMENTS:      The previous sample call will return a true value if a 
  2878.                     variable named VERSION had been given any value prior 
  2879.                     to this call, otherwise it will return a false value.
  2880.  
  2881.  
  2882.      CONDITION:     EXIST or !EXIST
  2883.  
  2884.      PURPOSE:       Checks for the existence of a file. ! negates the
  2885.                     outcome.
  2886.  
  2887.      SYNTAX:        IF EXIST [<DRIVE\PATH\>FILENAME]
  2888.                     IF !EXIST [<DRIVE\PATH\>FILENAME]
  2889.  
  2890.      SAMPLE CALL:   IF EXIST C:\WIN.COM
  2891.  
  2892.      COMMENTS:      In the previous sample win.com will be searched for on the
  2893.                     root of  C:.  NUL can replace the filename if checking 
  2894.                     for the existence of a directory.  No wild cards can be 
  2895.                     used.
  2896.  
  2897.  
  2898.  
  2899.  
  2900.  
  2901.  
  2902.  
  2903. IF (continued)
  2904.  
  2905. AVAILABLE CONDITIONS:
  2906.  
  2907.  
  2908.      CONDITION:     EXIST* or !EXIST*
  2909.  
  2910.      PURPOSE:       Checks for the existence of a file in the path given
  2911.                     and all sub directories. ! negates the outcome.
  2912.  
  2913.      SYNTAX:        IF EXIST* [<DRIVE\PATH\>FILENAME]
  2914.                     IF !EXIST* [<DRIVE\PATH\>FILENAME]
  2915.  
  2916.      SAMPLE CALL:   IF EXIST* C:\WIN.COM
  2917.  
  2918.      COMMENTS:      In the previous sample the file win.com will be searched for
  2919.                     on the root of C: and all sub directories.  NUL can
  2920.                     replace the filename if checking for the existence of a
  2921.                     directory.  No wild cards can be used.
  2922.  
  2923.  
  2924.      CONDITION:     TEXTEXIST or !TEXTEXIST
  2925.  
  2926.      PURPOSE:       Search for text inside a given text file.  ! negates
  2927.                     the outcome.
  2928.  
  2929.      SYNTAX:        IF TEXTEXIST [<DRIVE\PATH\>FILENAME] [SEARCH STRING]
  2930.                     IF !TEXTEXIST [<DRIVE\PATH\>FILENAME] [SEARCH STRING]
  2931.  
  2932.      SAMPLE CALL:   IF TEXTEXIST C:\AUTOEXEC.BAT "PATH C:\;C:\DOS"
  2933.  
  2934.      COMMENTS:
  2935.  
  2936.  
  2937.      CONDITION:     ISNUM or !ISNUM
  2938.  
  2939.      PURPOSE:       Determines whether a string contains all numeric
  2940.                     digits.  ! negates the outcome.
  2941.  
  2942.      SYNTAX:        IF ISNUM [VALUE]
  2943.                     IF !ISNUM [VALUE]
  2944.  
  2945.      SAMPLE CALL:   (1)  IF ISNUM "1456"
  2946.                     (2)  EQU TEMP 345F
  2947.                          IF ISNUM @TEMP@
  2948.  
  2949.      COMMENTS:      Sample call #1 will return a true value.
  2950.  
  2951.                     Sample call #2 will return a false value.
  2952.  
  2953.  
  2954.  
  2955.  
  2956.  
  2957.  
  2958.  
  2959.  
  2960.  
  2961.  
  2962.  
  2963.  
  2964.  
  2965.  
  2966.  
  2967.  
  2968.  
  2969. IF (continued)
  2970.  
  2971. AVAILABLE LOGICAL OPERATORS:
  2972.  
  2973.  
  2974.      OPERATOR: AND
  2975.  
  2976.      PURPOSE:       Separates multiple CONDITIONS which must return true
  2977.                     values for the whole expression to be true.
  2978.  
  2979.      SYNTAX:        IF = [CONDITION1] AND [CONDITION2] AND [CONDITION3] .....
  2980.  
  2981.      SAMPLE CALL:   IF = "Tony" @NAME@ AND exist c:\autoexec.bat
  2982.  
  2983.      COMMENTS:      You can combine different LOGICAL OPERATORS on the same
  2984.                     line, but there is no way to set precedence.
  2985.  
  2986.  
  2987.      OPERATOR: OR
  2988.  
  2989.      PURPOSE:       Separates multiple CONDITIONS one of which must return
  2990.                     a true values for the whole expression to be true.
  2991.  
  2992.      SYNTAX:        IF = [CONDITION1] OR [CONDITION2] OR [CONDITION3] ...
  2993.  
  2994.      SAMPLE CALL:   IF = "Tony" @NAME@ OR exist c:\autoexec.bat
  2995.  
  2996.      COMMENTS:      You can combine different LOGICAL OPERATORS on the same
  2997.                     line, but there is no way to set precedence.
  2998.  
  2999.  
  3000.  
  3001.  
  3002.  
  3003.  
  3004.  
  3005.  
  3006.  
  3007.  
  3008.  
  3009.  
  3010.  
  3011.  
  3012.  
  3013.  
  3014.  
  3015.  
  3016.  
  3017.  
  3018.  
  3019.  
  3020.  
  3021.  
  3022.  
  3023.  
  3024.  
  3025.  
  3026.  
  3027.  
  3028.  
  3029.  
  3030.  
  3031.  
  3032.  
  3033.  
  3034.  
  3035. INLINE
  3036.  
  3037. PURPOSE:       Takes the given string and determines if the given substring
  3038.                is contained within that string, and if so returns the 
  3039.                position of the first character of the substring in the given 
  3040.                string.  If the substring is not found in the string then the 
  3041.                function returns 0.
  3042.  
  3043. SYNTAX:        INLINE [STRING] [SUBSTRING] [VARIABLE NAME]
  3044.  
  3045. SAMPLE CALL:   INLINE "HELLO WORLD" "WORLD" LOCATION
  3046.  
  3047. COMMENTS:      In the previous sample call the value of LOCATION will be 7.
  3048.  
  3049. ASSOCIATED COMMANDS:     CONCAT, CROP, EXTRACTI, LCROP, LENGTH, LTRIM,
  3050.                          RCROP, RTRIM
  3051.  
  3052.  
  3053.  
  3054.  
  3055.  
  3056.  
  3057.  
  3058.  
  3059.  
  3060.  
  3061.  
  3062.  
  3063.  
  3064.  
  3065.  
  3066.  
  3067.  
  3068.  
  3069.  
  3070.  
  3071.  
  3072.  
  3073.  
  3074.  
  3075.  
  3076.  
  3077.  
  3078.  
  3079.  
  3080.  
  3081.  
  3082.  
  3083.  
  3084.  
  3085.  
  3086.  
  3087.  
  3088.  
  3089.  
  3090.  
  3091.  
  3092.  
  3093.  
  3094.  
  3095.  
  3096.  
  3097.  
  3098.  
  3099.  
  3100.  
  3101. INPUT
  3102.  
  3103. PURPOSE:       Prompts user for input and stores it in the given variable.
  3104.  
  3105. SYNTAX:        INPUT [VARIABLE NAME]
  3106.  
  3107. SAMPLE CALL:   INPUT CHOICE
  3108.  
  3109. COMMENTS:      In the previous sample the user will be prompted for input and
  3110.                when entered it will be stored in the variable CHOICE.
  3111.  
  3112. ASSOCIATED COMMANDS:     INPUTWINDOW, MENU
  3113.  
  3114.  
  3115.  
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121.  
  3122.  
  3123.  
  3124.  
  3125.  
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132.  
  3133.  
  3134.  
  3135.  
  3136.  
  3137.  
  3138.  
  3139.  
  3140.  
  3141.  
  3142.  
  3143.  
  3144.  
  3145.  
  3146.  
  3147.  
  3148.  
  3149.  
  3150.  
  3151.  
  3152.  
  3153.  
  3154.  
  3155.  
  3156.  
  3157.  
  3158.  
  3159.  
  3160.  
  3161.  
  3162.  
  3163.  
  3164.  
  3165.  
  3166.  
  3167. INPUTWINDOW
  3168.  
  3169. PURPOSE:       Create a window with various fields for the user to fill in.
  3170.                The fields are defined on the command line and can specify 
  3171.                what type of character to accept and specify the format.
  3172.  
  3173. SYNTAX:        INPUTWINDOW [WINDOW TITLE] [HEADING] [PICTURE] [VARIABLE]
  3174.                <HEADING2> <PICTURE2> <VARIABLE2> .........
  3175.  
  3176.      PARAMETERS:    WINDOW TITLE   -    Title of window displayed on screen.  
  3177.                                         If you do not want a title then 
  3178.                                         enter "" for that parameter.
  3179.                     HEADING        -    Describes to user what information
  3180.                                         you are asking for.
  3181.                     PICTURE        -    Describes the format of the desired
  3182.                                         information.
  3183.  
  3184.                                    - OPTIONS:
  3185.                                         X - Any character.
  3186.                                         9 - Only numbers accepted.
  3187.                                         L - Only 'Y' or 'N' accepted.
  3188.                                             (Default is 'N')
  3189.  
  3190.                     VARIABLE        -   Variable name to store input in.
  3191.  
  3192. SAMPLE CALL:        INPUTWINDOW "MAILING LABELS" "NAME   : " "XXXXXXXXXXXXXXX"
  3193.                     NAME "ADDRESS: " "XXXXXXXXXXXXXXX" ADDRESS1 "         :"
  3194.                     "XXXXXXXXXXXXXXX" ADDRESS2 "PHONE  : " "(999)999-9999" 
  3195.                     PHONE
  3196.  
  3197. COMMENTS:           The window produced from the previous sample call will 
  3198.                     look similar to the following along with a border:
  3199.  
  3200.                    MAILING LABELS
  3201.                NAME      :
  3202.                ADDRESS   :
  3203.                          :
  3204.                PHONE     :  (   )   -
  3205.  
  3206.                Any character added as part of the picture other than 'X',
  3207.                '9' or 'L' will be a permanent part of the users input and
  3208.                users will not be allowed to change it.  The parenthesis and 
  3209.                hyphen in the phone field above are such.
  3210.  
  3211.                You can have a maximum of 20 lines with a maximum of 75
  3212.                characters in each line.
  3213.  
  3214.                User may use any of the typical navigation key to get around
  3215.                the window.  When the user is satisfied with the entries
  3216.                he must press return with the cursor sitting on the last line 
  3217.                in the window to terminate input.  All values will then be 
  3218.                stored in the variables specified on the command line.
  3219.  
  3220. ASSOCIATED COMMANDS:     INPUT, MENU, MENUITEMBACK, MENUITEMFORE,
  3221.                          OUTPUTWINDOW, WINBACK, WINFORE 
  3222.                          
  3223.  
  3224.  
  3225.  
  3226.  
  3227.  
  3228.  
  3229.  
  3230.  
  3231.  
  3232.  
  3233. INSERTTEXT
  3234.  
  3235. PURPOSE:       Insert text into a text file.  Text may be
  3236.                inserted anywhere in the text file depending on
  3237.                which switch is chosen.
  3238.  
  3239. SYNTAX:        INSERTTEXT [<DRIVE\PATH\>FILENAME] ["NEW TEXT"] [*SWITCH] 
  3240.                <"SUB_STRING1"> <"SUB_STRING2">
  3241.  
  3242.      SWITCHES: *P   -    Insert NEW TEXT on the line before the first 
  3243.                          occurrence of  a line containing SUB_STRING1 but 
  3244.                          NOT if the line contains SUB_STRING2.
  3245.                *A   -    Insert NEW TEXT on the line after the first 
  3246.                          occurrence of a line containing SUB_STRING1 but NOT 
  3247.                          if the line contains SUB_STRING2.
  3248.                *R   -    Replaces the first occurrence of a line containing 
  3249.                          SUB_STRING1 with NEW TEXT only if the line does not 
  3250.                          contain SUB_STRING2.
  3251.                *PE  -    Insert NEW TEXT on the line before every occurrence 
  3252.                          of  a line containing SUB_STRING1 but NOT if the 
  3253.                          line contains SUB_STRING2.
  3254.                *AE  -    Insert NEW TEXT on the line after every occurrence 
  3255.                          of a line containing SUB_STRING1 but NOT if the line 
  3256.                          contains SUB_STRING2.
  3257.                *RE  -    Replaces every occurrence of a line containing 
  3258.                          SUB_STRING1 with NEW TEXT only if the line does not 
  3259.                          contain SUB_STRING2.
  3260.                *T   -    Insert NEW TEXT on the first line of the file.
  3261.                *B   -    Insert NEW TEXT on the last line of the file.
  3262.  
  3263. SAMPLE CALL:   INSERTTEXT C:\AUTOEXEC.BAT "SET TEMP=C:\DOS" *P "PATH"
  3264.  
  3265. COMMENTS:      In the previous sample call "SET TEMP=C:\DOS" will be inserted 
  3266.                in "C:\AUTOEXEC.BAT" before the first occurrence of "PATH" is
  3267.                found in the file.  If you want to insert a blank line use "" 
  3268.                in place of the NEW TEXT parameter.  If you want to delete a 
  3269.                given line, use the *R switch with "" in place of NEW TEXT.  
  3270.                Remember that SUB_STRING2 is not required but can be used to exclude 
  3271.                lines you do not want evaluated.
  3272.  
  3273.                SUB_STRING1 is required if you use the *P, *A or *R switches.
  3274.  
  3275. ASSOCIATED COMMANDS:     ADDGROUP, DELGROUP, NUMLINES, PULLTEXT, READLINE, 
  3276.                          REMOVESECTION, REMOVETEXT
  3277.  
  3278.  
  3279.  
  3280.  
  3281.  
  3282.  
  3283.  
  3284.  
  3285.  
  3286.  
  3287.  
  3288.  
  3289.  
  3290.  
  3291.  
  3292.  
  3293.  
  3294.  
  3295.  
  3296.  
  3297.  
  3298.  
  3299. INVENTORY
  3300.  
  3301. PURPOSE:       Searches for all occurrences of the specified file(s) and
  3302.                stores their PATH in the specified text file.  A heading can 
  3303.                be specified that helps describe the purpose of the inventory
  3304.                or any other use you can think of.
  3305.  
  3306. SYNTAX:        INVENTORY [<DRIVE\PATH\>FILENAME1] [<DRIVE\PATH\>FILENAME2]
  3307.                ["HEADING"] [*SWITCH]
  3308.  
  3309.                FILENAME1 -    File(s) being searched for.
  3310.                FILENAME2 -    File to store the PATHs of files that are
  3311.                               found.
  3312.                HEADING   -    String of text that is inserted in FILENAME2
  3313.                               before the PATHs of any found files.
  3314.  
  3315.      SWITCHES: *S   -    Searches all sub directories.
  3316.  
  3317. SAMPLE CALL:   INVENTORY C:\*.DOC "List of all documents" *S
  3318.  
  3319. COMMENTS:      If you do not want a HEADING use "" in place of this 
  3320.                parameter.  The output file FILENAME2 is never overwritten, 
  3321.                but has all text appended to it.
  3322.  
  3323. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, FILETIME,
  3324.                          GETVOLUME, MOVE, PUTVOLUME, REN, RENDIR
  3325.  
  3326.  
  3327.  
  3328.  
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.  
  3335.  
  3336.  
  3337.  
  3338.  
  3339.  
  3340.  
  3341.  
  3342.  
  3343.  
  3344.  
  3345.  
  3346.  
  3347.  
  3348.  
  3349.  
  3350.  
  3351.  
  3352.  
  3353.  
  3354.  
  3355.  
  3356.  
  3357.  
  3358.  
  3359.  
  3360.  
  3361.  
  3362.  
  3363.  
  3364.  
  3365. LABEL
  3366.  
  3367. PURPOSE:       Mark a location in the script where an associated GOTO
  3368.                command will transfer control.
  3369.  
  3370. SYNTAX:        LABEL [NAME]
  3371.  
  3372. SAMPLE CALL:   GOTO END
  3373.                EQU COUNTRY USA
  3374.                LABEL END
  3375.  
  3376. COMMENTS:      In the previous sample the EQU command will not execute 
  3377.                because the GOTO command causes control to skip to the line
  3378.                marked by the appropriate LABEL.
  3379.  
  3380. ASSOCIATED COMMANDS:     GOTO
  3381.  
  3382.  
  3383.  
  3384.  
  3385.  
  3386.  
  3387.  
  3388.  
  3389.  
  3390.  
  3391.  
  3392.  
  3393.  
  3394.  
  3395.  
  3396.  
  3397.  
  3398.  
  3399.  
  3400.  
  3401.  
  3402.  
  3403.  
  3404.  
  3405.  
  3406.  
  3407.  
  3408.  
  3409.  
  3410.  
  3411.  
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.  
  3418.  
  3419.  
  3420.  
  3421.  
  3422.  
  3423.  
  3424.  
  3425.  
  3426.  
  3427.  
  3428.  
  3429.  
  3430.  
  3431. LCROP
  3432.  
  3433. PURPOSE:       Extracts n# of characters from the left side of the given
  3434.                string and stores them in the given variable.
  3435.  
  3436. SYNTAX:        LCROP ["SOURCE"] [NUMBER OF CHARACTERS] [VARIABLE NAME]
  3437.  
  3438. SAMPLE CALL:   EQU STRING "PATH = C:\DOS"
  3439.                LCROP @STRING@ 4 STRING2
  3440.  
  3441. COMMENTS:      In the previous sample call the 4 leftmost characters of 
  3442.                "PATH = C:\DOS" will be placed in the variable STRING2.  The 
  3443.                value stored in STRING2 in this sample call will be "PATH".
  3444.  
  3445. ASSOCIATED COMMANDS:     CONCAT, CROP, EXTRACTI, INLINE, LENGTH, LTRIM,
  3446.                          RCROP, RTRIM
  3447.  
  3448.  
  3449.  
  3450.  
  3451.  
  3452.  
  3453.  
  3454.  
  3455.  
  3456.  
  3457.  
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.  
  3464.  
  3465.  
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471.  
  3472.  
  3473.  
  3474.  
  3475.  
  3476.  
  3477.  
  3478.  
  3479.  
  3480.  
  3481.  
  3482.  
  3483.  
  3484.  
  3485.  
  3486.  
  3487.  
  3488.  
  3489.  
  3490.  
  3491.  
  3492.  
  3493.  
  3494.  
  3495.  
  3496.  
  3497. LENGTH
  3498.  
  3499. PURPOSE:       Determines the length of the given string and stores that
  3500.                value in the given variable.
  3501.  
  3502. SYNTAX:        LENGTH ["SOURCE"] [VARIABLE NAME]
  3503.  
  3504. SAMPLE CALL:   EQU STRING "PATH"
  3505.                LENGTH @STRING@ STRING2
  3506.  
  3507. COMMENTS:      In the previous sample call the length of the value of STRING
  3508.                will be stored in the variable STRING2.  The value stored
  3509.                in STRING2 in this sample call will be 4.
  3510.  
  3511. ASSOCIATED COMMANDS:     CONCAT, CROP, EXTRACTI, INLINE, LCROP, LTRIM,
  3512.                          RCROP, RTRIM
  3513.  
  3514.  
  3515.  
  3516.  
  3517.  
  3518.  
  3519.  
  3520.  
  3521.  
  3522.  
  3523.  
  3524.  
  3525.  
  3526.  
  3527.  
  3528.  
  3529.  
  3530.  
  3531.  
  3532.  
  3533.  
  3534.  
  3535.  
  3536.  
  3537.  
  3538.  
  3539.  
  3540.  
  3541.  
  3542.  
  3543.  
  3544.  
  3545.  
  3546.  
  3547.  
  3548.  
  3549.  
  3550.  
  3551.  
  3552.  
  3553.  
  3554.  
  3555.  
  3556.  
  3557.  
  3558.  
  3559.  
  3560.  
  3561.  
  3562.  
  3563. LISTVARS
  3564.  
  3565. PURPOSE:       Displays all the currently defined SSL variables.
  3566.  
  3567. SYNTAX:        LISTVARS
  3568.  
  3569. SAMPLE CALL:   LISTVARS
  3570.  
  3571. COMMENTS:
  3572.  
  3573. ASSOCIATED COMMANDS:     RELEASE, RELEASEALL
  3574.  
  3575.  
  3576.  
  3577.  
  3578.  
  3579.  
  3580.  
  3581.  
  3582.  
  3583.  
  3584.  
  3585.  
  3586.  
  3587.  
  3588.  
  3589.  
  3590.  
  3591.  
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.  
  3622.  
  3623.  
  3624.  
  3625.  
  3626.  
  3627.  
  3628.  
  3629. LOCALENV
  3630.  
  3631. PURPOSE:       Change, Add or Delete a environment variable in the current or 
  3632.                local environment.
  3633.  
  3634. SYNTAX:        LOCALENV [VARIABLE NAME] <VALUE>
  3635.  
  3636. SAMPLE CALL:   (1)  LOCALENV PATH C:\DOS
  3637.                (2)  LOCALENV PATH
  3638.  
  3639. COMMENTS:      Sample call 1 with change the PATH to C:\DOS.
  3640.  
  3641.                Sample call 2 will delete the current PATH.
  3642.  
  3643.                Once execution of SSL terminates the environment reverts
  3644.                back to the state it was in before SSL ran.
  3645.  
  3646. ASSOCIATED COMMANDS:     GLOBALENV
  3647.  
  3648.  
  3649.  
  3650.  
  3651.  
  3652.  
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.  
  3659.  
  3660.  
  3661.  
  3662.  
  3663.  
  3664.  
  3665.  
  3666.  
  3667.  
  3668.  
  3669.  
  3670.  
  3671.  
  3672.  
  3673.  
  3674.  
  3675.  
  3676.  
  3677.  
  3678.  
  3679.  
  3680.  
  3681.  
  3682.  
  3683.  
  3684.  
  3685.  
  3686.  
  3687.  
  3688.  
  3689.  
  3690.  
  3691.  
  3692.  
  3693.  
  3694.  
  3695. LOOP
  3696.  
  3697. PURPOSE:       Terminates a WHILE command.
  3698.  
  3699. SYNTAX:        LOOP
  3700.  
  3701. SAMPLE CALL:   WHILE
  3702.                .
  3703.                .
  3704.                LOOP
  3705.  
  3706. COMMENTS:      While a condition in a WHILE statement is true, all the
  3707.                instructions following the WHILE command will be executed
  3708.                up to the associated LOOP command.  Control is then
  3709.                transferred back to the original WHILE statement and the 
  3710.                condition is tested again.  This process will continue until 
  3711.                the conditional statement found in the WHILE statement is
  3712.                false.
  3713.  
  3714. ASSOCIATED COMMANDS:
  3715.  
  3716.  
  3717.  
  3718.  
  3719.  
  3720.  
  3721.  
  3722.  
  3723.  
  3724.  
  3725.  
  3726.  
  3727.  
  3728.  
  3729.  
  3730.  
  3731.  
  3732.  
  3733.  
  3734.  
  3735.  
  3736.  
  3737.  
  3738.  
  3739.  
  3740.  
  3741.  
  3742.  
  3743.  
  3744.  
  3745.  
  3746.  
  3747.  
  3748.  
  3749.  
  3750.  
  3751.  
  3752.  
  3753.  
  3754.  
  3755.  
  3756.  
  3757.  
  3758.  
  3759.  
  3760.  
  3761. LTRIM
  3762.  
  3763. PURPOSE:       Remove leading spaces from a string or remove a specified
  3764.                number of character from the left side of the given string
  3765.                and store the remainder in the given variable.
  3766.  
  3767. SYNTAX:        LTRIM ["SOURCE"] [VARIABLE NAME] <NUMBER OF CHARACTERS>
  3768.  
  3769. SAMPLE CALL:   (1)  LTRIM "     Hello World" STRING2
  3770.                (2)  LTRIM "Hello World" STRING2 6
  3771.  
  3772. COMMENTS:      Sample call #1 will remove the leading spaces and store 
  3773.                "Hello World" in the variable STRING2.
  3774.  
  3775.                Sample call #2 will remove the first 6 characters from
  3776.                "Hello World" and store "World" in the variable STRING2.
  3777.  
  3778.                If you specify the number of characters to remove and the
  3779.                string has leading spaces, the spaces are not
  3780.                automatically removed but considered as actual characters 
  3781.                which count against the number of characters you specified 
  3782.                to remove.
  3783.  
  3784. ASSOCIATED COMMANDS:     CONCAT, CROP, EXTRACTI, INLINE, LCROP, LENGTH,
  3785.                          RCROP, RTRIM
  3786.  
  3787.  
  3788.  
  3789.  
  3790.  
  3791.  
  3792.  
  3793.  
  3794.  
  3795.  
  3796.  
  3797.  
  3798.  
  3799.  
  3800.  
  3801.  
  3802.  
  3803.  
  3804.  
  3805.  
  3806.  
  3807.  
  3808.  
  3809.  
  3810.  
  3811.  
  3812.  
  3813.  
  3814.  
  3815.  
  3816.  
  3817.  
  3818.  
  3819.  
  3820.  
  3821.  
  3822.  
  3823.  
  3824.  
  3825.  
  3826.  
  3827. MASTERBACK
  3828.  
  3829. PURPOSE:       Changes the background color used for the application.
  3830.  
  3831. SYNTAX:        MASTERBACK [COLORCOLOR]
  3832.  
  3833.      AVAILABLE COLORS:   BLACK
  3834.                          BLUE
  3835.                          GREEN
  3836.                          CYAN
  3837.                          RED
  3838.                          MAGENTA
  3839.                          BROWN
  3840.                          LIGHTGRAY
  3841.  
  3842. SAMPLE CALL:   MASTERBACK BLUE
  3843.  
  3844. COMMENTS:
  3845.  
  3846. ASSOCIATED COMMANDS:     MASTERFORE, MENUITEMBACK, MENUITEMFORE,
  3847.                          REFRESH, WINBACK, WINFORE
  3848.  
  3849.  
  3850.  
  3851.  
  3852.  
  3853.  
  3854.  
  3855.  
  3856.  
  3857.  
  3858.  
  3859.  
  3860.  
  3861.  
  3862.  
  3863.  
  3864.  
  3865.  
  3866.  
  3867.  
  3868.  
  3869.  
  3870.  
  3871.  
  3872.  
  3873.  
  3874.  
  3875.  
  3876.  
  3877.  
  3878.  
  3879.  
  3880.  
  3881.  
  3882.  
  3883.  
  3884.  
  3885.  
  3886.  
  3887.  
  3888.  
  3889.  
  3890.  
  3891.  
  3892.  
  3893. MASTERFORE
  3894.  
  3895. PURPOSE:       Changes the foreground color used for the application.
  3896.  
  3897. SYNTAX:        MASTERFORE [COLORCOLOR]
  3898.  
  3899.      AVAILABLE COLORS:   BLACK
  3900.                          BLUE
  3901.                          GREEN
  3902.                          CYAN
  3903.                          RED
  3904.                          MAGENTA
  3905.                          BROWN
  3906.                          LIGHTGRAY
  3907.                          DARKGRAY
  3908.                          LIGHTBLUE
  3909.                          LIGHTGREEN
  3910.                          LIGHTCYAN
  3911.                          LIGHTRED
  3912.                          LIGHTMAGENTA
  3913.                          YELLOW
  3914.                          WHITE
  3915.  
  3916. SAMPLE CALL:   MASTERFORE BLUE
  3917.  
  3918. COMMENTS:
  3919.  
  3920. ASSOCIATED COMMANDS:     MASTERBACK, MENUITEMBACK, MENUITEMFORE,
  3921.                          REFRESH, WINBACK, WINFORE
  3922.  
  3923.  
  3924.  
  3925.  
  3926.  
  3927.  
  3928.  
  3929.  
  3930.  
  3931.  
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.  
  3938.  
  3939.  
  3940.  
  3941.  
  3942.  
  3943.  
  3944.  
  3945.  
  3946.  
  3947.  
  3948.  
  3949.  
  3950.  
  3951.  
  3952.  
  3953.  
  3954.  
  3955.  
  3956.  
  3957.  
  3958.  
  3959. MD
  3960.  
  3961. PURPOSE:       Create a directory.
  3962.  
  3963. SYNTAX:        MD [<DRIVE\PATH\>DIRECTORY]
  3964.  
  3965. SAMPLE CALL:   MD C:\TEST
  3966.  
  3967. COMMENTS:
  3968.  
  3969. ASSOCIATED COMMANDS:     CD, RD
  3970.  
  3971.  
  3972.  
  3973.  
  3974.  
  3975.  
  3976.  
  3977.  
  3978.  
  3979.  
  3980.  
  3981.  
  3982.  
  3983.  
  3984.  
  3985.  
  3986.  
  3987.  
  3988.  
  3989.  
  3990.  
  3991.  
  3992.  
  3993.  
  3994.  
  3995.  
  3996.  
  3997.  
  3998.  
  3999.  
  4000.  
  4001.  
  4002.  
  4003.  
  4004.  
  4005.  
  4006.  
  4007.  
  4008.  
  4009.  
  4010.  
  4011.  
  4012.  
  4013.  
  4014.  
  4015.  
  4016.  
  4017.  
  4018.  
  4019.  
  4020.  
  4021.  
  4022.  
  4023.  
  4024.  
  4025. MENU
  4026.  
  4027. PURPOSE:       Display a menu and have the user make a selection.  The
  4028.                number of the menu option selected is then stored in the
  4029.                variable given on the command line.
  4030.  
  4031. SYNTAX:        MENU [VARIABLE NAME] [MENU TITLE] [MENU ITEM1] 
  4032.                <"MENU ITEM2"> ....
  4033.  
  4034. SAMPLE CALL:   EQU ITEM3 "INSTALL APPLICATION"
  4035.                MENU CHOICE "MAIN MENU" "INSTALL DOS" "DELETE FILE" @ITEM3@
  4036.  
  4037. COMMENTS:      Variables can be used as MENU ITEMs.  This is the best way to 
  4038.                set up the menu items because of the limited space you have on
  4039.                the command line.  The maximum number of menu items is 20 with 
  4040.                a maximum of 75 characters in menu title.  If you do not wish 
  4041.                to have a MENU TITLE then substitute "" for that parameter.  
  4042.                In the previous sample call you will have the following menu 
  4043.                options displayed on the screen with a MENU TITLE and border:
  4044.  
  4045.                MAIN MENU
  4046.  
  4047.                INSTALL DOS
  4048.                DELETE FILE
  4049.                INSTALL APPLICATION
  4050.  
  4051.  
  4052.                The user can then use the cursor keys to select the option
  4053.                they desire.  The number of that option will be stored in the
  4054.                given variable name, in this case CHOICE.  If you choose
  4055.                INSTALL APPLICATION then the value of CHOICE will be 3.
  4056.  
  4057. ASSOCIATED COMMANDS:     INPUT, INPUTWINDOW, MENUITEMBACK, MENUITEMFORE,
  4058.                          OUTPUTWINDOW, WINBACK, WINFORE
  4059.  
  4060.  
  4061.  
  4062.  
  4063.  
  4064.  
  4065.  
  4066.  
  4067.  
  4068.  
  4069.  
  4070.  
  4071.  
  4072.  
  4073.  
  4074.  
  4075.  
  4076.  
  4077.  
  4078.  
  4079.  
  4080.  
  4081.  
  4082.  
  4083.  
  4084.  
  4085.  
  4086.  
  4087.  
  4088.  
  4089.  
  4090.  
  4091. MENUITEMBACK
  4092.  
  4093. PURPOSE:       Changes the background color of a highlighted window item.
  4094.  
  4095. SYNTAX:        MENUITEMBACK [COLORCOLOR]
  4096.  
  4097.      AVAILABLE COLORS:   BLACK
  4098.                          BLUE
  4099.                          GREEN
  4100.                          CYAN
  4101.                          RED
  4102.                          MAGENTA
  4103.                          BROWN
  4104.                          LIGHTGRAY
  4105.  
  4106. SAMPLE CALL:   MENUITEMBACK BLUE
  4107.  
  4108. COMMENTS:
  4109.  
  4110. ASSOCIATED COMMANDS:     MASTERBACK, MASTERFORE, MENUITEMFORE, REFRESH,
  4111.                          WINBACK, WINFORE
  4112.  
  4113.  
  4114.  
  4115.  
  4116.  
  4117.  
  4118.  
  4119.  
  4120.  
  4121.  
  4122.  
  4123.  
  4124.  
  4125.  
  4126.  
  4127.  
  4128.  
  4129.  
  4130.  
  4131.  
  4132.  
  4133.  
  4134.  
  4135.  
  4136.  
  4137.  
  4138.  
  4139.  
  4140.  
  4141.  
  4142.  
  4143.  
  4144.  
  4145.  
  4146.  
  4147.  
  4148.  
  4149.  
  4150.  
  4151.  
  4152.  
  4153.  
  4154.  
  4155.  
  4156.  
  4157. MENUITEMFORE
  4158.  
  4159. PURPOSE:       Changes the foreground color of a highlighted window item.
  4160.  
  4161. SYNTAX:        MENUITEMFORE [COLORCOLOR]
  4162.  
  4163.      AVAILABLE COLORS:   BLACK
  4164.                          BLUE
  4165.                          GREEN
  4166.                          CYAN
  4167.                          RED
  4168.                          MAGENTA
  4169.                          BROWN
  4170.                          LIGHTGRAY
  4171.                          DARKGRAY
  4172.                          LIGHTBLUE
  4173.                          LIGHTGREEN
  4174.                          LIGHTCYAN
  4175.                          LIGHTRED
  4176.                          LIGHTMAGENTA
  4177.                          YELLOW
  4178.                          WHITE
  4179.  
  4180. SAMPLE CALL:   MENUITEMFORE BLUE
  4181.  
  4182. COMMENTS:
  4183.  
  4184. ASSOCIATED COMMANDS:     MASTERBACK, MASTERFORE, MENUITEMBACK,
  4185.                          REFRESH, WINBACK, WINFORE
  4186.  
  4187.  
  4188.  
  4189.  
  4190.  
  4191.  
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.  
  4202.  
  4203.  
  4204.  
  4205.  
  4206.  
  4207.  
  4208.  
  4209.  
  4210.  
  4211.  
  4212.  
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.  
  4222.  
  4223. MOD
  4224.  
  4225. PURPOSE:       Divides two numbers and stores the remainder in the given
  4226.                variable.
  4227.  
  4228. SYNTAX:        MOD [NUMBER1] [NUMBER2] [VARIABLE NAME]
  4229.  
  4230. SAMPLE CALL:   EQU COUNT 10
  4231.                MOD 52 @COUNT@ ANSWER
  4232.  
  4233. COMMENTS:      Numbers and or variables can be used.  In the previous sample
  4234.                call the value of ANSWER will be 2.
  4235.  
  4236. ASSOCIATED COMMANDS:     ADD, DIV, MULT, SUB
  4237.  
  4238.  
  4239.  
  4240.  
  4241.  
  4242.  
  4243.  
  4244.  
  4245.  
  4246.  
  4247.  
  4248.  
  4249.  
  4250.  
  4251.  
  4252.  
  4253.  
  4254.  
  4255.  
  4256.  
  4257.  
  4258.  
  4259.  
  4260.  
  4261.  
  4262.  
  4263.  
  4264.  
  4265.  
  4266.  
  4267.  
  4268.  
  4269.  
  4270.  
  4271.  
  4272.  
  4273.  
  4274.  
  4275.  
  4276.  
  4277.  
  4278.  
  4279.  
  4280.  
  4281.  
  4282.  
  4283.  
  4284.  
  4285.  
  4286.  
  4287.  
  4288.  
  4289. MOVE
  4290.  
  4291. PURPOSE:       Moves files from their given location to a new location.
  4292.  
  4293. SYNTAX:        MOVE [SOURCE] [DESTINATION] <*SWITCH>
  4294.  
  4295.      SWITCHES: *S   -    Moves files found in all sub directories.
  4296.  
  4297.  
  4298. SAMPLE CALL:   (1)  MOVE C:\DATA\FILE.EXE C:\BACKUP\FILE.EXE
  4299.                (2)  MOVE C:\*.BAT C:\BACKUP\*.* *S
  4300.  
  4301. COMMENTS:      Dos wild card conventions can be used.  Files can not be moved
  4302.                between physical drives or logical partitions.
  4303.  
  4304. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, FILETIME,
  4305.                          GETVOLUME, INVENTORY, PUTVOLUME, REN, RENDIR
  4306.  
  4307.  
  4308.  
  4309.  
  4310.  
  4311.  
  4312.  
  4313.  
  4314.  
  4315.  
  4316.  
  4317.  
  4318.  
  4319.  
  4320.  
  4321.  
  4322.  
  4323.  
  4324.  
  4325.  
  4326.  
  4327.  
  4328.  
  4329.  
  4330.  
  4331.  
  4332.  
  4333.  
  4334.  
  4335.  
  4336.  
  4337.  
  4338.  
  4339.  
  4340.  
  4341.  
  4342.  
  4343.  
  4344.  
  4345.  
  4346.  
  4347.                          
  4348.  
  4349.  
  4350.  
  4351.  
  4352.  
  4353.  
  4354.  
  4355. MSGLEVEL
  4356.  
  4357. PURPOSE:       Specifies what type of progress tracking you desire and/or a
  4358.                file to log the progress to.
  4359.  
  4360. SYNTAX:        MSGLEVEL [OPTION] <LOG FILENAME>
  4361.  
  4362.                OPTIONS:  0 -  Prints progress to the PROGRESS window and
  4363.                               saves progress in the LOG file.
  4364.                          1 -  Prints progress to the PROGRESS window but
  4365.                               does not save progress in the LOG file.
  4366.                          2-   Does not print progress to the PROGRESS
  4367.                               window but does save progress in the LOG
  4368.                               file.
  4369.                          3 -  Does not print progress to the PROGRESS
  4370.                               window nor does it save progress in the LOG
  4371.                               file.
  4372.  
  4373. SAMPLE CALL:   (1)  MSGLEVEL 3
  4374.                (2)  MSGLEVEL 0 C:\SSL.LOG
  4375.  
  4376. COMMENTS:      Sample call #1 will cause SSL to stop printing progress to the
  4377.                PROGRESS window and to the LOG file, if one has been
  4378.                opened previously.
  4379.  
  4380.                Sample call #2 will cause SSL to print progress to the
  4381.                PROGRESS window and open a file called SSL.LOG in the
  4382.                root of the C: drive and log all progress to that file.
  4383.                
  4384.                By default MSGLEVEL is set to 1 and no log file is opened.
  4385.  
  4386.                You must specify a LOG FILENAME when setting the MSGLEVEL to
  4387.                0 and 2 for the first time.  After initializing a LOG
  4388.                file you no longer need to specify a LOG FILENAME
  4389.                when using these MSGLEVEL's.
  4390.  
  4391.                A LOG FILENAME should not be specified when setting MSGLEVEL
  4392.                to 1 or 3.
  4393.  
  4394.                If you are running SSL by specifying commands on the command
  4395.                line, this command has no effect.
  4396.  
  4397. ASSOCIATED COMMANDS:     ERRORLEVEL, PAUSE
  4398.  
  4399.  
  4400.  
  4401.  
  4402.  
  4403.  
  4404.  
  4405.  
  4406.  
  4407.  
  4408.  
  4409.  
  4410.  
  4411.  
  4412.  
  4413.  
  4414.  
  4415.  
  4416.  
  4417.  
  4418.  
  4419.  
  4420.  
  4421. MULT
  4422.  
  4423. PURPOSE:       Multiply two numbers together and store the value in the
  4424.                given variable.
  4425.  
  4426. SYNTAX:        MULT [NUMBER1] [NUMBER2] [VARIABLE NAME]
  4427.  
  4428. SAMPLE CALL:   EQU COUNT 10
  4429.                MULT 50 @COUNT@ ANSWER
  4430.  
  4431. COMMENTS:      Numbers and or variables can be used.  In the previous sample
  4432.                call the value of ANSWER will be 500.
  4433.  
  4434. ASSOCIATED COMMANDS:     ADD, DIV, MOD, SUB
  4435.  
  4436.  
  4437.  
  4438.  
  4439.  
  4440.  
  4441.  
  4442.  
  4443.  
  4444.  
  4445.  
  4446.  
  4447.  
  4448.  
  4449.  
  4450.  
  4451.  
  4452.  
  4453.  
  4454.  
  4455.  
  4456.  
  4457.  
  4458.  
  4459.  
  4460.  
  4461.  
  4462.  
  4463.  
  4464.  
  4465.  
  4466.  
  4467.  
  4468.  
  4469.  
  4470.  
  4471.  
  4472.  
  4473.  
  4474.  
  4475.  
  4476.  
  4477.  
  4478.  
  4479.  
  4480.  
  4481.  
  4482.  
  4483.  
  4484.  
  4485.  
  4486.  
  4487. NUMLINES
  4488.  
  4489. PURPOSE:       Determines the number of lines in a text file and stores
  4490.                that value in the given variable.
  4491.  
  4492. SYNTAX:        NUMLINES [<DRIVE\PATH\>FILENAME] [VARIABLE NAME]
  4493.  
  4494. SAMPLE CALL:   NUMLINES C:\AUTOEXEC.BAT VALUE
  4495.  
  4496. COMMENTS:      In the previous sample call the number of lines in the
  4497.                AUTOEXEC.BAT file will be calculated and stored in the
  4498.                variable VALUE.
  4499.  
  4500. ASSOCIATED COMMANDS:     ADDGROUP, DELGROUP, INSERTTEXT, PULLTEXT, READLINE, 
  4501.                          REMOVESECTION, REMOVETEXT
  4502.  
  4503.  
  4504.  
  4505.  
  4506.  
  4507.  
  4508.  
  4509.  
  4510.  
  4511.  
  4512.  
  4513.  
  4514.  
  4515.  
  4516.  
  4517.  
  4518.  
  4519.  
  4520.  
  4521.  
  4522.  
  4523.  
  4524.  
  4525.  
  4526.  
  4527.  
  4528.  
  4529.  
  4530.  
  4531.  
  4532.  
  4533.  
  4534.  
  4535.  
  4536.  
  4537.  
  4538.  
  4539.  
  4540.  
  4541.  
  4542.  
  4543.  
  4544.  
  4545.  
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.  
  4553. OUTPUTWINDOW
  4554.  
  4555. PURPOSE:       Create a window and print information to it.
  4556.  
  4557. SYNTAX:        OUTPUTWINDOW [WINDOW TITLE] [STRING1] <STRING2> .....
  4558.  
  4559. SAMPLE CALL:   EQU ADDRESS "610 Jackson Street"
  4560.                EQU CITY Greenville
  4561.                EQU STATE NC
  4562.                EQU ZIP 87654
  4563.                OUTPUTWINDOW " CUSTOMER INFO " "Mike Johnson" @ADDRESS@
  4564.                "@CITY@, @STATE@ @ZIP@"
  4565.  
  4566. COMMENTS:      The window produced from the previous sample call will look
  4567.                similar to the following along with a border:
  4568.  
  4569.                CUSTOMER INFO
  4570.                Mike Johnson
  4571.                610 Jackson Street
  4572.                Greenville, NC 87654
  4573.  
  4574.                Remember that the variables CITY, STATE and ZIP are between
  4575.                double quotes and will be treated as one parameter so they
  4576.                will be put on the same line.
  4577.  
  4578.                You can have a maximum of 20 lines with a maximum of 75
  4579.                characters in each line.
  4580.  
  4581.                If you do not desire a menu title then use "" in place of
  4582.                that parameter.  If you would like a blank line displayed use
  4583.                "" as the parameter.
  4584.  
  4585. ASSOCIATED COMMANDS:     INPUT, INPUTWINDOW, MENU, WINBACK, WINFORE
  4586.  
  4587.  
  4588.  
  4589.  
  4590.  
  4591.  
  4592.  
  4593.  
  4594.  
  4595.  
  4596.  
  4597.  
  4598.  
  4599.  
  4600.  
  4601.  
  4602.  
  4603.  
  4604.  
  4605.  
  4606.  
  4607.  
  4608.  
  4609.  
  4610.  
  4611.  
  4612.  
  4613.  
  4614.  
  4615.  
  4616.  
  4617.  
  4618.  
  4619. PAUSE
  4620.  
  4621. PURPOSE:       When issued, it will cause SSL to prompt the user to press
  4622.                any key when it finishes processing the entire script.
  4623.  
  4624. SYNTAX:        PAUSE
  4625.  
  4626. SAMPLE CALL:   PAUSE
  4627.  
  4628. COMMENTS:      This is useful in debugging if SSL is terminating so quickly 
  4629.                that you can not see what kind of errors are being displayed.
  4630.                Also remember that you can set up log files using the 
  4631.                ERRORLEVEL and MSGLEVEL commands that will aid you in 
  4632.                debugging. This command is most effective if you make it the 
  4633.                first entry in your script.
  4634.  
  4635. ASSOCIATED COMMANDS:     ERRORLEVEL, MSGLEVEL, WAIT
  4636.  
  4637.  
  4638.  
  4639.  
  4640.  
  4641.  
  4642.  
  4643.  
  4644.  
  4645.  
  4646.  
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.  
  4665.  
  4666.  
  4667.  
  4668.  
  4669.  
  4670.  
  4671.  
  4672.  
  4673.  
  4674.  
  4675.  
  4676.  
  4677.  
  4678.  
  4679.  
  4680.  
  4681.  
  4682.  
  4683.  
  4684.  
  4685. PULLTEXT
  4686.  
  4687. PURPOSE:       Extract text from a text file by specifying a sub string of
  4688.                the line you want to extract.  Extracted text is placed
  4689.                in the variable name given on the command line.
  4690.  
  4691. SYNTAX:        PULLTEXT [<DRIVE\PATH\>FILENAME] ["SUB STRING"] [VARIABLE NAME]
  4692.                <*SWITCH> <SUB STRING> <*SWITCH> <SUB STRING> .....
  4693.  
  4694.      SWITCHES: *P   -    The line that is to be extracted must be found
  4695.                          before the SUB STRING given after this switch
  4696.                          is found in the file.  This switch can only be used
  4697.                          once.
  4698.                *A   -    The line that is to be extracted must be found
  4699.                          after the SUB STRING given after this switch
  4700.                          is found in the file.  This switch can only be use
  4701.                          once.
  4702.                *N   -    The line that is to be extracted can not contain
  4703.                          the SUB STRING given after this switch.  You
  4704.                          can use this switch up to 10 times.
  4705.  
  4706. SAMPLE CALL:   (1)  PULLTEXT C:\AUTOEXEC.BAT PROMPT STORE
  4707.                (2)  PULLTEXT C:\AUTOEXEC.BAT "PATH" STRING *A "PROMPT"
  4708.                     *P "DOSKEY" *N "SET PATH"
  4709.  
  4710. COMMENTS:      Sample call #1 will extract the first line that has the string
  4711.                PROMPT contained in it and store the entire line of text
  4712.                in the variable STORE.
  4713.  
  4714.                Sample call #2 will extract the first line that meets the
  4715.                following conditions and store the entire line of text in the 
  4716.                variable STRING:
  4717.  
  4718.                1.  The line must contain PATH
  4719.                2.  The line must not contain SET PATH
  4720.                3.  A line that contains DOSKEY must not have been found yet
  4721.                4.  A line that contains PROMPT must have already been found.
  4722.  
  4723. ASSOCIATED COMMANDS:     ADDGROUP, DELGROUP, INSERTTEXT, NUMLINES, READLINE, 
  4724.                          REMOVESECTION, REMOVETEXT
  4725.  
  4726.  
  4727.  
  4728.  
  4729.  
  4730.  
  4731.  
  4732.  
  4733.  
  4734.  
  4735.  
  4736.  
  4737.  
  4738.  
  4739.  
  4740.  
  4741.  
  4742.  
  4743.  
  4744.  
  4745.  
  4746.  
  4747.  
  4748.  
  4749.  
  4750.  
  4751. PUSHKEY
  4752.  
  4753. PURPOSE:       Places keys in the keyboard buffer.  This can be done one of
  4754.                two ways, the first way is to give the string of characters 
  4755.                you want pushed, the second is to give the SCAN code and
  4756.                ASCII code of the keys you want pushed.
  4757.  
  4758. SYNTAX:        PUSHKEY [SWITCH] [PARAMETER1] <PARAMETER2>
  4759.  
  4760.      SWITCHES: *A   -    Specifies that PARAMETER1 will be a string of
  4761.                          characters you wish to have placed in the
  4762.                          keyboard buffer which will have a RETURN appended
  4763.                          at the end of it.
  4764.                *S   -    Specifies that a list of ASCII codes and SCAN
  4765.                          codes of the characters you want PUSHED will be
  4766.                          given.  In this case, PARAMETER1 will be the
  4767.                          ASCII code of the first character and PARAMETER2 
  4768.                          will be the SCAN code of the first character you 
  4769.                          want PUSHED.  Both ASCII CODE and SCAN CODE must 
  4770.                          be given unless it is not in the extended character 
  4771.                          set, then you would just pass 0 as the SCAN CODE.
  4772.  
  4773.  
  4774. SAMPLE CALL:   (1)  PUSHKEY *S 69 0 68 0 73 0 84 0 32 0 67 0 58 0 92 0 71 0
  4775.                     79 0 46 0 66 0 65 0 84 0 13 0
  4776.                (2)  PUSHKEY *A "EDIT C:\GO.BAT"
  4777.                (3)  PUSHKEY *S 0 61
  4778.  
  4779. COMMENTS:      Sample calls #1 and #2 both will push "EDIT C:\GO.BAT" into 
  4780.                the keyboard buffer along with a RETURN. Maximum of 15 
  4781.                characters.
  4782.  
  4783.                Sample call #3 will push the F3 key into the keyboard buffer.
  4784.  
  4785. ASSOCIATED COMMANDS:
  4786.  
  4787.  
  4788.  
  4789.  
  4790.  
  4791.  
  4792.  
  4793.  
  4794.  
  4795.  
  4796.  
  4797.  
  4798.  
  4799.  
  4800.  
  4801.  
  4802.  
  4803.  
  4804.  
  4805.  
  4806.  
  4807.  
  4808.  
  4809.  
  4810.  
  4811.  
  4812.  
  4813.  
  4814.  
  4815.  
  4816.  
  4817. PUTVOLUME
  4818.  
  4819. PURPOSE:       Writes the given volume label to the given disk drive.
  4820.  
  4821. SYNTAX:        PUTVOLUME [DRIVE LETTER:] [VOLUME LABEL]
  4822.  
  4823. SAMPLE CALL:   (1)  PUTVOLUME A: DISK1
  4824.                (2)  PUTVOLUME A:
  4825.  
  4826. COMMENTS:      Sample call #1 will change the Volume Label on the disk in 
  4827.                drive A: to DISK1.
  4828.  
  4829.                Sample call #2 will delete the Volume Label on the disk in 
  4830.                drive A:.
  4831.  
  4832. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, FILETIME,                                             
  4833.                          GETVOLUME, INVENTORY, MOVE, REN, RENDIR
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.  
  4845.  
  4846.  
  4847.  
  4848.  
  4849.  
  4850.  
  4851.  
  4852.  
  4853.  
  4854.  
  4855.  
  4856.  
  4857.  
  4858.  
  4859.  
  4860.  
  4861.  
  4862.  
  4863.  
  4864.  
  4865.  
  4866.  
  4867.  
  4868.  
  4869.  
  4870.  
  4871.  
  4872.  
  4873.  
  4874.  
  4875.  
  4876.  
  4877.  
  4878.  
  4879.  
  4880.  
  4881.  
  4882.  
  4883. RCROP
  4884.  
  4885. PURPOSE:       Extracts n# of characters from the right side of the given
  4886.                string and stores them in the given variable.
  4887.  
  4888. SYNTAX:        RCROP ["SOURCE"] [NUMBER OF CHARACTERS] [VARIABLE NAME]
  4889.  
  4890. SAMPLE CALL:   EQU STRING "PATH = C:\DOS"
  4891.                RCROP @STRING@ 4 STRING2
  4892.  
  4893. COMMENTS:      In the previous sample call the 4 rightmost characters of 
  4894.                "PATH = C:\DOS" will be placed in the variable STRING2.  The 
  4895.                value stored in STRING2 in this sample call will be "\DOS".
  4896.  
  4897. ASSOCIATED COMMANDS:     CONCAT, CROP, EXTRACTI, INLINE, LCROP, LENGTH,
  4898.                          LTRIM, RTRIM
  4899.  
  4900.  
  4901.  
  4902.  
  4903.  
  4904.  
  4905.  
  4906.  
  4907.  
  4908.  
  4909.  
  4910.  
  4911.  
  4912.  
  4913.  
  4914.  
  4915.  
  4916.  
  4917.  
  4918.  
  4919.  
  4920.  
  4921.  
  4922.  
  4923.  
  4924.  
  4925.  
  4926.  
  4927.  
  4928.  
  4929.  
  4930.  
  4931.  
  4932.  
  4933.  
  4934.  
  4935.  
  4936.  
  4937.  
  4938.  
  4939.  
  4940.  
  4941.  
  4942.  
  4943.  
  4944.  
  4945.  
  4946.  
  4947.  
  4948.  
  4949. RD
  4950.  
  4951. PURPOSE:       Delete a directory.
  4952.  
  4953. SYNTAX:        RD [<DRIVE\PATH\>DIRECTORY]
  4954.  
  4955. SAMPLE CALL:   RD C:\TEST
  4956.  
  4957. COMMENTS:      The directory which is to be deleted can only be deleted if 
  4958.                there are no files or sub directories in it.
  4959.  
  4960. ASSOCIATED COMMANDS:     CD, MD
  4961.  
  4962.  
  4963.  
  4964.  
  4965.  
  4966.  
  4967.  
  4968.  
  4969.  
  4970.  
  4971.  
  4972.  
  4973.  
  4974.  
  4975.  
  4976.  
  4977.  
  4978.  
  4979.  
  4980.  
  4981.  
  4982.  
  4983.  
  4984.  
  4985.  
  4986.  
  4987.  
  4988.  
  4989.  
  4990.  
  4991.  
  4992.  
  4993.  
  4994.  
  4995.  
  4996.  
  4997.  
  4998.  
  4999.  
  5000.  
  5001.  
  5002.  
  5003.  
  5004.  
  5005.  
  5006.  
  5007.  
  5008.  
  5009.  
  5010.  
  5011.  
  5012.  
  5013.  
  5014.  
  5015. READLINE
  5016.  
  5017. PURPOSE:       Reads the specified line number from the given file and
  5018.                stores it in the given variable..
  5019.  
  5020. SYNTAX:        READLINE [<DRIVE\PATH\>FILENAME] [LINE NUMBER] [VARIABLE NAME]
  5021.  
  5022. SAMPLE CALL:   READLINE C:\AUTOEXEC.BAT 5 LINE
  5023.  
  5024. COMMENTS:      The previous sample call will read the 5th line in the
  5025.                AUTOEXEC.BAT file and store the value in the variable LINE.
  5026.  
  5027. ASSOCIATED COMMANDS:     ADDGROUP, DELGROUP, INSERTTEXT, NUMLINES, PULLTEXT, 
  5028.                          REMOVESECTION, REMOVETEXT
  5029.  
  5030.  
  5031.  
  5032.  
  5033.  
  5034.  
  5035.  
  5036.  
  5037.  
  5038.  
  5039.  
  5040.  
  5041.  
  5042.  
  5043.  
  5044.  
  5045.  
  5046.  
  5047.  
  5048.  
  5049.  
  5050.  
  5051.  
  5052.  
  5053.  
  5054.  
  5055.  
  5056.  
  5057.  
  5058.  
  5059.  
  5060.  
  5061.  
  5062.  
  5063.  
  5064.  
  5065.  
  5066.  
  5067.  
  5068.  
  5069.  
  5070.  
  5071.  
  5072.  
  5073.  
  5074.  
  5075.  
  5076.  
  5077.  
  5078.  
  5079.  
  5080.  
  5081. REBOOT
  5082.  
  5083. PURPOSE:       Performs a WARM or COLD boot depending on user's request.
  5084.  
  5085. SYNTAX:        REBOOT <OPTION>
  5086.  
  5087.      OPTIONS:  1. COLD
  5088.                2. WARM
  5089.  
  5090. SAMPLE CALL:   (1)  REBOOT
  5091.                (2)  REBOOT COLD
  5092.                (3)  REBOOT WARM
  5093.  
  5094. COMMENTS:      If no OPTION is given the default is COLD.
  5095.  
  5096.                Sample call #1 and #2 will do a COLD boot which is like
  5097.                powering the system up or pressing the reset button.
  5098.  
  5099.                Sample call #3 will do a WARM boot which is like pressing
  5100.                Ctrl Alt Delete.
  5101.  
  5102. ASSOCIATED COMMANDS:     EXIT
  5103.  
  5104.  
  5105.  
  5106.  
  5107.  
  5108.  
  5109.  
  5110.  
  5111.  
  5112.  
  5113.  
  5114.  
  5115.  
  5116.  
  5117.  
  5118.  
  5119.  
  5120.  
  5121.  
  5122.  
  5123.  
  5124.  
  5125.  
  5126.  
  5127.  
  5128.  
  5129.  
  5130.  
  5131.  
  5132.  
  5133.  
  5134.  
  5135.  
  5136.  
  5137.  
  5138.  
  5139.  
  5140.  
  5141.  
  5142.  
  5143.  
  5144.  
  5145.  
  5146.  
  5147. REFRESH
  5148.  
  5149. PURPOSE:       Refreshes the entire screen using the current MASTERBACK,
  5150.                MASTERFORE, WINBACK and WINFORE colors currently defined.
  5151.  
  5152. SYNTAX:        REFRESH
  5153.  
  5154. SAMPLE CALL:   REFRESH
  5155.  
  5156. COMMENTS:      This command also erases all the text in the PROGRESS and 
  5157.                ERRORS windows.
  5158.  
  5159.                REFRESH uses the WINBACK and WINFORE colors to refresh the
  5160.                PROGRESS and ERRORS windows. It uses the MASTERBACK and
  5161.                MASTERFORE colors to refresh everything else.
  5162.  
  5163.                If all you want to do is change the colors of any new
  5164.                windows you open but not anything else, do not issue this
  5165.                command.  REFRESH is not needed to change the colors of
  5166.                anything accept those things already displayed on the screen 
  5167.                by default.  Typically it will only be used to change the colors of the
  5168.                PROGRESS window and the ERRORS window.
  5169.  
  5170. ASSOCIATED COMMANDS:     MASTERBACK, MASTERFORE, MENUITEMBACK,
  5171.                          MENUITEMFORE, WINBACK, WINFORE
  5172.  
  5173.  
  5174.  
  5175.  
  5176.  
  5177.  
  5178.  
  5179.  
  5180.  
  5181.  
  5182.  
  5183.  
  5184.  
  5185.  
  5186.  
  5187.  
  5188.  
  5189.  
  5190.  
  5191.  
  5192.  
  5193.  
  5194.  
  5195.  
  5196.  
  5197.  
  5198.  
  5199.  
  5200.  
  5201.  
  5202.  
  5203.  
  5204.  
  5205.  
  5206.  
  5207.  
  5208.  
  5209.  
  5210.  
  5211.  
  5212.  
  5213. RELEASE
  5214.  
  5215. PURPOSE:       Erases the given variable.
  5216.  
  5217. SYNTAX:        RELEASE [VARIABLE NAME]
  5218.  
  5219. SAMPLE CALL:   RELEASE STRING1
  5220.  
  5221. COMMENTS:      It is always good to RELEASE a variable when you are finished
  5222.                using it so that you don't reach the limit.
  5223.  
  5224. ASSOCIATED COMMANDS:     LISTVARS, RELEASEALL
  5225.  
  5226.  
  5227.  
  5228.  
  5229.  
  5230.  
  5231.  
  5232.  
  5233.  
  5234.  
  5235.  
  5236.  
  5237.  
  5238.  
  5239.  
  5240.  
  5241.  
  5242.  
  5243.  
  5244.  
  5245.  
  5246.  
  5247.  
  5248.  
  5249.  
  5250.  
  5251.  
  5252.  
  5253.  
  5254.  
  5255.  
  5256.  
  5257.  
  5258.  
  5259.  
  5260.  
  5261.  
  5262.  
  5263.  
  5264.  
  5265.  
  5266.  
  5267.  
  5268.  
  5269.  
  5270.  
  5271.  
  5272.  
  5273.  
  5274.  
  5275.  
  5276.  
  5277.  
  5278.  
  5279. RELEASEALL
  5280.  
  5281. PURPOSE:       Erases all currently defined variables.
  5282.  
  5283. SYNTAX:        RELEASEALL
  5284.  
  5285. SAMPLE CALL:   RELEASEALL
  5286.  
  5287. COMMENTS:
  5288.  
  5289. ASSOCIATED COMMANDS:     LISTVARS, RELEASE
  5290.  
  5291.  
  5292.  
  5293.  
  5294.  
  5295.  
  5296.  
  5297.  
  5298.  
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304.  
  5305.  
  5306.  
  5307.  
  5308.  
  5309.  
  5310.  
  5311.  
  5312.  
  5313.  
  5314.  
  5315.  
  5316.  
  5317.  
  5318.  
  5319.  
  5320.  
  5321.  
  5322.  
  5323.  
  5324.  
  5325.  
  5326.  
  5327.  
  5328.  
  5329.  
  5330.  
  5331.  
  5332.  
  5333.  
  5334.  
  5335.  
  5336.  
  5337.  
  5338.  
  5339.  
  5340.  
  5341.  
  5342.  
  5343.  
  5344.  
  5345. REMOVESECTION
  5346.  
  5347. PURPOSE:       Removes an entire section from a text file that uses file 
  5348.                formatting conventions like those found in WINDOWS INI files 
  5349.                and multiple boot configurations in the CONFIG.SYS file.
  5350.  
  5351. SYNTAX:        REMOVESECTION [<DRIVE\PATH\>FILENAME] ["[SECTION NAME]"]
  5352.  
  5353. SAMPLE CALL:   REMOVESECTION C:\WINDOWS\WIN.INI "[DESKTOP]"
  5354.  
  5355. COMMENTS:      The previous sample call will delete the first line with a 
  5356.                heading of [DESKTOP] and all lines after it up to the next 
  5357.                section heading or to the end of the file, which ever comes 
  5358.                first.
  5359.  
  5360. ASSOCIATED COMMANDS:     ADDGROUP, DELGROUP, INSERTTEXT, NUMLINES, PULLTEXT,
  5361.                          READLINE, REMOVETEXT 
  5362.  
  5363.  
  5364.  
  5365.  
  5366.  
  5367.  
  5368.  
  5369.  
  5370.  
  5371.  
  5372.  
  5373.  
  5374.  
  5375.  
  5376.  
  5377.  
  5378.  
  5379.  
  5380.  
  5381.  
  5382.  
  5383.  
  5384.  
  5385.  
  5386.  
  5387.  
  5388.  
  5389.  
  5390.  
  5391.  
  5392.  
  5393.  
  5394.  
  5395.  
  5396.  
  5397.  
  5398.  
  5399.  
  5400.  
  5401.  
  5402.  
  5403.  
  5404.  
  5405.  
  5406.  
  5407.  
  5408.  
  5409.  
  5410.  
  5411. REMOVETEXT
  5412.  
  5413. PURPOSE:       Removes text from a text file by specifying a sub string of 
  5414.                the line you want to remove.
  5415.  
  5416. SYNTAX:        REMOVETEXT [<DRIVE\PATH\>FILENAME] ["SUB STRING"] <*SWITCH>                          
  5417.                <SUB STRING1> <*SWITCH> <SUBSTRING2>  .............
  5418.  
  5419.      SWITCHES: *P   -    The line that is to be deleted must be found before 
  5420.                          the SUB STRING given with this switch is found in 
  5421.                          the file.  This switch can only be used once.
  5422.                *A   -    The line that is to be deleted must be found after 
  5423.                          the SUB STRING given with this switch is found in 
  5424.                          the file.  This switch can only be use once.
  5425.                *E   -    When this switch is given, every line that meets 
  5426.                          the criteria for deletion will be deleted.
  5427.                *N   -    The line that is to be deleted can not contain the 
  5428.                          SUB STRING given after this switch.  You can use 
  5429.                          this switch up to 10 times.
  5430.  
  5431.  
  5432. SAMPLE CALL:   (1)  REMOVETEXT C:\AUTOEXEC.BAT PROMPT
  5433.                (2)  REMOVETEXT C:\AUTOEXEC.BAT "PATH" *A "PROMPT" *P "DOSKEY" 
  5434.                     *N "SET PATH"
  5435.  
  5436. COMMENTS:      Sample call #1 will delete the first line that has
  5437.                the string PROMPT contained in it.
  5438.  
  5439.                Sample call #2 will delete the first line that meets the 
  5440.                following conditions:
  5441.  
  5442.                1.  The line must contain PATH.
  5443.                2.  The line must not contain SET PATH.
  5444.                3.  A line that contains DOSKEY must not have been found yet.
  5445.                4.  A line that contains PROMPT must have already been found.
  5446.  
  5447. ASSOCIATED COMMANDS:     ADDGROUP, DELGROUP, INSERTTEXT, NUMLINES, PULLTEXT, 
  5448.                          READLINE, REMOVESECTION
  5449.  
  5450.  
  5451.  
  5452.  
  5453.  
  5454.  
  5455.  
  5456.  
  5457.  
  5458.  
  5459.  
  5460.  
  5461.  
  5462.  
  5463.  
  5464.  
  5465.  
  5466.  
  5467.  
  5468.  
  5469.  
  5470.  
  5471.  
  5472.  
  5473.  
  5474.  
  5475.  
  5476.  
  5477. REN
  5478.  
  5479. PURPOSE:       Renames the given file(s) to the new name specified.
  5480.  
  5481. SYNTAX:        REN [<DRIVE\PATH\>CURRENT FILENAME] [NEW FILENAME] <SWITCH>
  5482.  
  5483.      SWITCHES: *S   -    Renames files found in all sub directories.
  5484.  
  5485.  
  5486. SAMPLE CALL:   (1)  REN C:\DATA\FILE.EXE NEWFILE.EXE
  5487.                (2)  REN C:\*.BAT *.BAK *S
  5488.  
  5489. COMMENTS:      NEW FILENAME must be given with NO PATH.  Dos wild card
  5490.                conventions can be used.
  5491.  
  5492. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, FILETIME,
  5493.                          GETVOLUME, INVENTORY, MOVE, PUTVOLUME, RENDIR
  5494.  
  5495.  
  5496.  
  5497.  
  5498.  
  5499.  
  5500.  
  5501.  
  5502.  
  5503.  
  5504.  
  5505.  
  5506.  
  5507.  
  5508.  
  5509.  
  5510.  
  5511.  
  5512.  
  5513.  
  5514.  
  5515.  
  5516.  
  5517.  
  5518.  
  5519.  
  5520.  
  5521.  
  5522.  
  5523.  
  5524.  
  5525.  
  5526.  
  5527.  
  5528.  
  5529.  
  5530.  
  5531.  
  5532.  
  5533.  
  5534.  
  5535.                          
  5536.  
  5537.  
  5538.  
  5539.  
  5540.  
  5541.  
  5542.  
  5543. RENDIR
  5544.  
  5545. PURPOSE:       Renames the given directory to the new name specified.
  5546.  
  5547. SYNTAX:        REN [<DRIVE\PATH\>CURRENT DIRECTORY NAME] [NEW DIRECTORY NAME]
  5548.  
  5549. SAMPLE CALL:   REN C:\DATA MYDATA
  5550.  
  5551. COMMENTS:      NEW DIRECTORY must be given with NO PATH.
  5552.  
  5553. ASSOCIATED COMMANDS:     ATTRIBUTE, COPY, DEL, FILEDATE, FILESIZE, FILETIME,
  5554.                          GETVOLUME, INVENTORY, MOVE, PUTVOLUME, REN
  5555.  
  5556.  
  5557.  
  5558.  
  5559.  
  5560.  
  5561.  
  5562.  
  5563.  
  5564.  
  5565.  
  5566.  
  5567.  
  5568.  
  5569.  
  5570.  
  5571.  
  5572.  
  5573.  
  5574.  
  5575.  
  5576.  
  5577.  
  5578.  
  5579.  
  5580.  
  5581.  
  5582.  
  5583.  
  5584.  
  5585.  
  5586.  
  5587.  
  5588.  
  5589.  
  5590.  
  5591.  
  5592.  
  5593.  
  5594.  
  5595.  
  5596.                          
  5597.  
  5598.  
  5599.  
  5600.  
  5601.  
  5602.  
  5603.  
  5604.  
  5605.  
  5606.  
  5607.  
  5608.  
  5609. RTRIM
  5610.  
  5611. PURPOSE:       Remove trailing spaces from a string or remove a specified
  5612.                number of character from the right side of the given string
  5613.                and store the remainder in the given variable.
  5614.  
  5615. SYNTAX:        RTRIM ["SOURCE"] [VARIABLE NAME] <NUMBER OF CHARACTERS>
  5616.  
  5617. SAMPLE CALL:   (1)  RTRIM "Hello World     " STRING2
  5618.                (2)  RTRIM "Hello World" STRING2 6
  5619.  
  5620. COMMENTS:      Sample call #1 will remove the trailing spaces and store 
  5621.                "Hello World" in the variable STRING2.
  5622.  
  5623.                Sample call #2 will remove the last 6 characters from 
  5624.                "Hello World" and store "Hello" in the variable STRING2.
  5625.  
  5626.                If you specify the number of characters to remove and the
  5627.                string has trailing spaces, the spaces are not
  5628.                automatically removed but considered as actual characters 
  5629.                which count against the number of characters you specified 
  5630.                to remove.
  5631.  
  5632. ASSOCIATED COMMANDS:     CONCAT, CROP, EXTRACTI, INLINE, LCROP, LENGTH,
  5633.                          LTRIM, RCROP
  5634.  
  5635.  
  5636.  
  5637.  
  5638.  
  5639.  
  5640.  
  5641.  
  5642.  
  5643.  
  5644.  
  5645.  
  5646.  
  5647.  
  5648.  
  5649.  
  5650.  
  5651.  
  5652.  
  5653.  
  5654.  
  5655.  
  5656.  
  5657.  
  5658.  
  5659.  
  5660.  
  5661.  
  5662.  
  5663.  
  5664.  
  5665.  
  5666.  
  5667.  
  5668.  
  5669.  
  5670.  
  5671.  
  5672.  
  5673.  
  5674.  
  5675. SSL
  5676.  
  5677. PURPOSE:       Executes the given script file.
  5678.  
  5679. SYNTAX:        SSL [<DRIVE\PATH\>FILENAME]
  5680.  
  5681. SAMPLE CALL:   SSL C:\SCRIPTS\INSTALL.SSL
  5682.  
  5683. COMMENTS:      All currently defined variables are passed to the script being
  5684.                executed.
  5685.  
  5686. ASSOCIATED COMMANDS:
  5687.  
  5688.  
  5689.  
  5690.  
  5691.  
  5692.  
  5693.  
  5694.  
  5695.  
  5696.  
  5697.  
  5698.  
  5699.  
  5700.  
  5701.  
  5702.  
  5703.  
  5704.  
  5705.  
  5706.  
  5707.  
  5708.  
  5709.  
  5710.  
  5711.  
  5712.  
  5713.  
  5714.  
  5715.  
  5716.  
  5717.  
  5718.  
  5719.  
  5720.  
  5721.  
  5722.  
  5723.  
  5724.  
  5725.  
  5726.  
  5727.  
  5728.  
  5729.  
  5730.  
  5731.  
  5732.  
  5733.  
  5734.  
  5735.  
  5736.  
  5737.  
  5738.  
  5739.  
  5740.  
  5741. SUB
  5742.  
  5743. PURPOSE:       Subtracts two numbers and stores the value in the given
  5744.                variable.
  5745.  
  5746. SYNTAX:        SUB [NUMBER1] [NUMBER2] [VARIABLE NAME]
  5747.  
  5748. SAMPLE CALL:   EQU COUNT 10
  5749.                SUB 50 @COUNT@ ANSWER
  5750.  
  5751. COMMENTS:      Numbers and or variables can be used.  In the previous sample
  5752.                call the value of ANSWER will be 40.
  5753.  
  5754. ASSOCIATED COMMANDS:     ADD, DIV, MOD, MULT
  5755.  
  5756.  
  5757.  
  5758.  
  5759.  
  5760.  
  5761.  
  5762.  
  5763.  
  5764.  
  5765.  
  5766.  
  5767.  
  5768.  
  5769.  
  5770.  
  5771.  
  5772.  
  5773.  
  5774.  
  5775.  
  5776.  
  5777.  
  5778.  
  5779.  
  5780.  
  5781.  
  5782.  
  5783.  
  5784.  
  5785.  
  5786.  
  5787.  
  5788.  
  5789.  
  5790.  
  5791.  
  5792.  
  5793.  
  5794.  
  5795.  
  5796.  
  5797.  
  5798.  
  5799.  
  5800.  
  5801.  
  5802.  
  5803.  
  5804.  
  5805.  
  5806.  
  5807. WAIT
  5808.  
  5809. PURPOSE:       Pauses execution of the script and prompts user to 
  5810.                "Press any key to continue!".
  5811.  
  5812. SYNTAX:        WAIT
  5813.  
  5814. SAMPLE CALL:   WAIT
  5815.  
  5816. COMMENTS:
  5817.  
  5818. ASSOCIATED COMMANDS:     DISPLAY
  5819.  
  5820.  
  5821.  
  5822.  
  5823.  
  5824.  
  5825.  
  5826.  
  5827.  
  5828.  
  5829.  
  5830.  
  5831.  
  5832.  
  5833.  
  5834.  
  5835.  
  5836.  
  5837.  
  5838.  
  5839.  
  5840.  
  5841.  
  5842.  
  5843.  
  5844.  
  5845.  
  5846.  
  5847.  
  5848.  
  5849.  
  5850.  
  5851.  
  5852.  
  5853.  
  5854.  
  5855.  
  5856.  
  5857.  
  5858.  
  5859.  
  5860.  
  5861.  
  5862.  
  5863.  
  5864.  
  5865.  
  5866.  
  5867.  
  5868.  
  5869.  
  5870.  
  5871.  
  5872.  
  5873. WHILE
  5874.  
  5875. PURPOSE:       The WHILE command will test a certain condition and execute
  5876.                the instructions following the WHILE command up to the
  5877.                associated LOOP command which will then cause control to 
  5878.                return back to the original WHILE command.  This process will
  5879.                continue until the condition given to the WHILE command
  5880.                is false.  The conditional statements and logical operators 
  5881.                are the same as used in the IF command.  Please refer to the 
  5882.                IF command for further explanations of the conditional 
  5883.                statements and logical operators.
  5884.  
  5885. SYNTAX:        WHILE [CONDITION] <LOGICAL OPERATOR> <CONDITION> ...
  5886.                     instructions
  5887.                     .
  5888.                     .
  5889.                     .
  5890.                LOOP
  5891.  
  5892. SAMPLE CALL:   EQU COUNTER1 5
  5893.                EQU COUNTER2 0
  5894.                WHILE > COUNTER1 COUNTER2
  5895.                     DISPLAY COUNTER2
  5896.                     ADD @COUNTER2@ 1 COUNTER2
  5897.                LOOP
  5898.  
  5899. COMMENTS:      In the previous sample call the value of COUNTER2 will 
  5900.                continue to be printed to the PROGRESS window until it is 
  5901.                equal to the value of COUNTER1.  The following will be                 
  5902.                printed to the PROGRESS window:
  5903.  
  5904.                          0
  5905.                          1
  5906.                          2
  5907.                          3
  5908.                          4
  5909.  
  5910.                Nested WHILE LOOPs are permitted.  Any variables used in a
  5911.                WHILE LOOP need to be initialized before use.
  5912.  
  5913. ASSOCIATED COMMANDS:     GOTO, IF
  5914.  
  5915.  
  5916.  
  5917.  
  5918.  
  5919.  
  5920.  
  5921.  
  5922.  
  5923.  
  5924.  
  5925.  
  5926.  
  5927.  
  5928.  
  5929.  
  5930.  
  5931.  
  5932.  
  5933.  
  5934.  
  5935.  
  5936.  
  5937.  
  5938.  
  5939. WINBACK
  5940.  
  5941. PURPOSE:       Changes the background color of a window.
  5942.  
  5943. SYNTAX:        WINBACK [COLORCOLOR]
  5944.  
  5945.      AVAILABLE COLORS:   BLACK
  5946.                          BLUE
  5947.                          GREEN
  5948.                          CYAN
  5949.                          RED
  5950.                          MAGENTA
  5951.                          BROWN
  5952.                          LIGHTGRAY
  5953.  
  5954. SAMPLE CALL:   WINBACK BLUE
  5955.  
  5956. COMMENTS:
  5957.  
  5958. ASSOCIATED COMMANDS:     MASTERBACK, MASTERFORE, MENUITEMBACK,
  5959.                          MENUITEMFORE, REFRESH, WINFORE
  5960.  
  5961.  
  5962.  
  5963.  
  5964.  
  5965.  
  5966.  
  5967.  
  5968.  
  5969.  
  5970.  
  5971.  
  5972.  
  5973.  
  5974.  
  5975.  
  5976.  
  5977.  
  5978.  
  5979.  
  5980.  
  5981.  
  5982.  
  5983.  
  5984.  
  5985.  
  5986.  
  5987.  
  5988.  
  5989.  
  5990.  
  5991.  
  5992.  
  5993.  
  5994.  
  5995.  
  5996.  
  5997.  
  5998.  
  5999.  
  6000.  
  6001.  
  6002.  
  6003.  
  6004.  
  6005. WINFORE
  6006.  
  6007. PURPOSE:       Changes the foreground color of a window.
  6008.  
  6009. SYNTAX:        WINFORE [COLORCOLOR]
  6010.  
  6011.      AVAILABLE COLORS:   BLACK
  6012.                          BLUE
  6013.                          GREEN
  6014.                          CYAN
  6015.                          RED
  6016.                          MAGENTA
  6017.                          BROWN
  6018.                          LIGHTGRAY
  6019.                          DARKGRAY
  6020.                          LIGHTBLUE
  6021.                          LIGHTGREEN
  6022.                          LIGHTCYAN
  6023.                          LIGHTRED
  6024.                          LIGHTMAGENTA
  6025.                          YELLOW
  6026.                          WHITE
  6027.  
  6028. SAMPLE CALL:   WINFORE BLUE
  6029.  
  6030. COMMENTS:
  6031.  
  6032. ASSOCIATED COMMANDS:     MASTERBACK, MASTERFORE, MENUITEMBACK,
  6033.                          MENUITEMFORE, REFRESH, WINBACK
  6034.  
  6035.